タグ付けされた質問 「source-layout」

ソースコードの物理的なレイアウトまたは物理的な操作を伴う課題。

4
ゲッターをゲット
タスク 私は誰もが自動コード生成と仕事中の時間の節約を愛していると思います。日中は多くのクラスとメンバーを作成するgetters必要があり、それらすべてを手動で作成する必要はありません。 タスクはgetters、すべてのクラスメンバーに対して自動的に生成されるプログラムまたは関数を作成することです。 入力 私たちの言語では、オブジェクトは非常に単純です。クラスおよびメンバーの名前は、文字から始まる必要[a-zA-Z]があり、文字のみを含めることができます[a-zA-Z0-9]。以下に例を示します。 class Stack { public overflow; protected trace; private errorReport; } 出力 これは、指定された例に基づいた有効な出力です。 class Stack { public overflow; protected trace; private errorReport; public function getOverflow() { return this->overflow; } public function getTrace() { return this->trace; } public function getErrorReport() { return this->errorReport; } } ゲッター getterメソッドの要件は次のとおりです。 …
13 code-golf  string  syntax  code-golf  math  primes  rational-numbers  code-golf  graphical-output  image-processing  code-golf  kolmogorov-complexity  music  audio  code-golf  string  code-golf  math  geometry  code-golf  math  sequence  combinatorics  code-golf  game  grid  board-game  code-golf  restricted-source  array-manipulation  source-layout  code-golf  base-conversion  binary  code-golf  math  physics  code-golf  math  number  date  expression-building  code-golf  array-manipulation  graph-theory  decision-problem  popularity-contest  error-correction  code-golf  kolmogorov-complexity  geometry  grid  code-challenge  arithmetic  combinatorics  set-partitions  code-golf  kolmogorov-complexity  sequence  fibonacci  code-golf  restricted-source  pristine-programming  code-golf  code-golf  string  kolmogorov-complexity  code-golf  arithmetic  code-golf  string  parsing  code-golf  code-golf  sorting  counting  permutations  3d  code-golf  code-golf  ascii-art  music  code-golf  string  code-golf  string  ascii-art  code-golf  string  code-golf  quine  polyglot  code-golf  math  string  code-golf  internet 

7
行、列、対角、ブロック
正の整数Nに対して、幅N文字、高さN文字の正方形のコードブロックを記述します。 たとえば、Nは5で、ブロックは次のようになります。 ThisI sMy5B y5Cod eBloc kOkay このブロックは次のように動作する必要があります。 一番上の行を抽出してプログラムとして実行する場合、正確なテキストrowを標準出力に出力する必要があります。 たとえば、ThisI印刷しますrow。 左の列を抽出してプログラムとして実行する場合、正確なテキストcolを標準出力に出力する必要があります。 たとえば、Tsyek印刷しますcol。 左上隅から右下隅までの主要な対角線を抽出してプログラムとして実行する場合、正確なテキストdiaを標準出力に出力する必要があります。 たとえば、TMCoy印刷しますdia。 ブロック全体が改行(オプションの末尾の改行を含む)を含むプログラムとして実行される場合、正確なテキストblkを標準出力に出力する必要があります。 例えば、 ThisI sMy5B y5Cod eBloc kOkay 印刷しますblk。 詳細 4つのプログラムはすべて同じプログラミング言語で実行されます。 元のブロックのN 2文字は、行末記号以外のものである可能性があります。 言語に標準出力がない場合は、別の一般的な出力方法を使用できます。4つのプログラムすべてで同じ方法でなければなりません。 オリジナルブロックに含まれる文字列が最も少ない(改行を含まない)提出物が勝ちです。Tiebreakerは、より小さいNを使用してサブミッションに進みます。

21
最長増加部分文字列
正の整数のリストが与えられたら、増加している(厳密ではない)最長の連続したサブリストの長さを見つけるコードを記述します。これは、各要素が最後の要素以上であるような最長のサブリストです。 たとえば、入力が次の場合: [1,1,2,1,1,4,5,3,2,1,1][1,1,2,1,1,4,5,3,2,1,1][1,1,2,1,1,4,5,3,2,1,1] 最長増加サブリストは次のようになり[1,1,4,5][1,1,4,5][1,1,4,5]あなたは出力だろうので、444。 回答は、ソースをバイトのリストとして取得し、そのリストの最も長く増加しているサブリストの長さを見つけることによってスコアリングされます。より低いスコアが目標です。全体のバイト数が少ないプログラムを優先して、関係が壊れています。

3
音素アブギダ
キャラクター これらのUnicode文字を英語のIPA子音と呼びましょう: bdfhjklmnprstvwzðŋɡʃʒθ そして、これらのUnicode文字を英語のIPA母音と呼びましょう : aeiouæɑɔəɛɜɪʊʌː (はい、ː単なる長母音マークですが、この課題のために母音として扱います。) 最後に、これらは一次および二次ストレスマークです: ˈˌ ことに留意されたいɡ(U + 0261)小文字gではなく、一次ストレスマーカーˈ(U + 02C8が)アポストロフィではなく、ː(U + 02D0)は、結腸ではありません。 あなたのタスク 単語が与えられたら、続く子音の上に母音を重ね、前に来る子音の下に強勢マーカーを置きます。(質問のタイトルが示唆するように、子音母音シーケンスがユニットとしてまとめられているような書記体系はabugidaと呼ばれます。)入力が与えられると、出力ˈbætəlʃɪpを生成します。 æə ɪ btlʃp ˈ 単語は上に定義した、子音、母音、およびストレスマークの文字列であることが保証されます。連続する強勢記号は決して存在せず、それらは常に単語の先頭および/または子音の前に置かれます。 テストケース 母音が連続している場合があります。例えば、kənˌɡrætjʊˈleɪʃənとなり ɪ ə æ ʊeə knɡrtjlʃn ˌ ˈ 単語が母音で始まる場合、子音と「ベースライン」に印刷:əˈpiːlとなり ː i əpl ˈ 初期の強調母音を含むテストケース:にˈælbəˌtrɔsなります ə ɔ ælbtrs ˈ ˌ 長い言葉:にˌsuːpərˌkaləˌfrædʒəˌlɪstɪˌkɛkspiːæləˈdoʊʃəsなる æ ː ː ʊ uə aə …

21
シーケンシャル乗算
あなたの目的は、入力を受け取り、時間を連鎖させたときにN「順次乗算」を実行するプログラムを作成することです。逐次乗算とは何ですか?このaように定義されたシードを持つシーケンスです: f(0) = a f(n+1) = f(n)*(f(n)-1) だから、みましょうa = 5。このように、f(0) = 5、f(1) = f(0)*(f(0)-1) = 5*4 = 20、とf(2) = f(1)*(f(1)-1) = 20*19 = 380。 あなたのプログラムであった場合ABC、その後、ABC入力すべきであるaと出力をf(1)。プログラムABCABCはf(2)などを出力する必要があります。プログラムシリーズは入力を1回のみ、出力を1回のみにする必要があります。 これはコードゴルフなので、バイト単位の最短プログラムが勝ちです。標準的な抜け穴は禁止されています。

1
コードSlidey Puzzleをコーディングしてください!
最も認識可能なスライディングパズルは15パズルです。4 x 4のグリッド、15のタイル、1つの空のグリッドスペースがあります。タイルは空のスペースにのみ移動でき、常にグリッドに沿っている必要があります。 レッツは、二次元のような一般スライディングパズル定義W、幅Hの高いグリッド(W、Hのいくつかの数含まれて正の整数の両方)同一のマークされていないタイル(0との間をW × Hそれらの)に配置されたグリッドにスナップ任意の方法(重複なし)、空のグリッドスペースが残りの領域を埋めます。 たとえば、WとHが3で、タイルがTあり、空のスペースがE多くのサイディングパズル配置の1つである場合、 TTT TET EET これらのパズルのために4つの可能な動きがあります。突き出すすべてのアップ、突き出すすべてのダウンは、突き出すすべてが左、または突き出すすべての権利。ある方向の「シェービング」により、すべてのタイルは、別のタイルまたはグリッド境界に到達するまで、可能な限りその方向に移動します。時々、突き出してもグリッドのレイアウトは変わらないことがありますが、 サンプルのグリッドが正しく押し込まれた場合、結果は TTT ETT EET 突き出した結果は TTT TTE TEE 結果を削った EET TET TTT (左端Tの両方が移動したことに注意してください) この場合、突き上げてもグリッドのレイアウトは変更されません。 タイルは区別できないため、これらのパズルには「解決済み」状態がないことに注意してください。また、パズルは、ひとたび押し出された後に戻ることが不可能なレイアウトで始まる場合があることに注意してください(3 x 3グリッドの中央にある1つのタイルなど)。 チャレンジ 印刷可能なASCIIのみを使用して、M文字幅とN文字高さ(正の整数M、Nの両方)の2つの長方形のコードブロックを書き込みます。1つのコードブロックはスライドパズルのタイルを表し、もう1つのコードブロックは空のグリッドスペースを表します。 これらの2つのコードブロックをW by Hグリッドに配置すると、コードで表されたスライドパズルが作成され、テキストファイルとして保存して通常のプログラムとして実行できます。これらの種類のプログラムを実行すると、stdinを介して1から4までの数字をユーザーに要求するはずです。1は上、2は下、左は3、右は4です。ユーザーが番号を入力してEnterキーを押すと、プログラムはソースコードタイルをその方向に押し出す方法を計算し、新しいパズルレイアウトをファイル(新しいファイルまたは同じファイル)に保存してから終了します。 このプロセスは、突き出すたびに生成される新しいスライドパズルコードファイルで無期限に繰り返すことができます。 例 タイルコードブ​​ロックが次のようになっているとします // my // tile 空のグリッドスペースコードブロックは次のようになります //empty //space (M = 7、N = 2、これはもちろん実際のコードではありません) これらの2つのブロックの有効なスライドパズルの配置は、ユーザーが何らかの方向に押し出すために実行できる、使用している言語でプログラムを作成する必要があります。 サンプルグリッドのコード表現は次のとおりです。 …

1
異なる言語でいくつかのクイーンストライプをゴルフ
m個の言語を選択し、各言語でn個のプログラムを作成します。各プログラムの長さはn * mです。K番目のプログラムを出力すべきKプログラム番号で注文した各プログラムの番目の文字、。 たとえば、この投稿では(デモンストレーションのみ。改行やタブを含む任意の文字を使用できます): ABC DEF GHI プログラムABCはを出力する必要ADGがあり、プログラムDEFし、それぞれGHI出力する必要がBEHありCFIます。 リスト内のすべてのプログラムは、通常のクインであってはなりません。だから、ABCとADG異なっている必要があります。同じことが他の2つのプログラムにも当てはまります。これを可能にするには、n * mは少なくとも2でなければならないことに注意してください。 特定の順序で言語を使用する必要はありません。したがって、言語Aで2つのプログラムを作成し、次に言語Bで3つのプログラムを作成し、次に言語Aで別のプログラムを作成できます。ただし、すべての言語はまったく同じ回数使用する必要があります。 プログラムの先頭/末尾の改行と出力は関係ありません。 最小n(m + 10)/ m 3の答えが勝ちです。しかし、少なくとも3つの言語を使用した場合、ほとんどの言語の回答に対して少なくとも+100の賞金を授与します。賞金の締め切り:改善のない1週間後、または答えが基準を満たさなかった場合は2015年3月1日 言語に関する規則 異なる名前の任意の言語、または一般に十分に異なると考えられる異なるバージョン(Python 2/3、ECMAScript 5/6など)を使用できます。ただし、プログラムは、使用した他の言語とまったく同じものを出力してはなりません。

5
コードを逆にし、OEISを逆にします
ここでのタスクは、自然数nnnを取り、OEISシーケンスのnnn番目の項を生成するプログラムを作成することです。そのシーケンスにはA、6桁の数字が続く形式の識別子が必要です。これで、ソースコードを取得し、そのバイトの順序を逆にして新しいプログラムを作成すると、そのプログラムはOEISシーケンスも実装する必要があります。新しいシーケンスはA、前回と同じ6桁の数字が逆順(先行ゼロを含む)で続いて識別される必要があります。 さて、物事が些細なものになるのを防ぐために、OEIS識別子番号もあなたのプログラムも回文ではありません。つまり、シーケンスとプログラムは異なるはずです。逆のシーケンスが存在しないか、空であるシーケンスを選択することはできません。 シーケンスごとに、0または1のインデックスを使用することを選択できます。同じインデックスを使用する必要はありません。一部のOEISシーケンスにはドメインが制限されているため、シーケンスのドメインの正しい数値を出力するだけで済みます。必要な動作は、ドメイン外では定義されていません(出力0、クラッシュ、ピザの注文など)。 これはコードゴルフであるため、回答はバイト単位でスコア付けされ、バイト数は少ない方が良いです。

9
誰もが友達になれない
孤立文字とは、同じタイプの隣接する文字を持たない文字(改行以外)です。隣接する文字は左、右上、または下にありますが、対角線にはできません。たとえば、次のテキストHは分離されています。 Ybb YH% %%%% 他のすべての文字は、それぞれに隣接する同じタイプの他の文字が少なくとも1つあるため、分離されていません。 あなたの仕事は、文字列を入力として受け取り、分離された文字の数を決定するプログラムを書くことです。 得点 あなたの答えは、2つの指標によって採点されます。1つ目は、プログラム内の分離文字の数です。これを最小限に抑えることを目指してください。2番目は、プログラムのバイト数です。これも最小限に抑える必要があります。プログラムサイズは、最初の基準のタイブレーカーとして機能します。 追加の規則 印刷可能なASCII範囲とプログラムで使用する文字の入力をサポートする必要があります。 改行は、改行文字または改行に続く改行のいずれかと見なすことができます。 妥当な形式で入力できます。これには、行のリストが含まれます。 テストケース Ybb YH% %%%% 111 Aaaab uuu yyybbb 222 A 111 qqWWaaww 000

2
右およびtfeL切り捨て可能素数
右切り捨てプライムは、すべてのプレフィックスが(ベース10)素数である素数です。Aは左切り捨てプライムは正確にすべての接尾辞が素数である反対、である(0で始まる素数が許可されていません)。これらのシーケンスは両方とも有限です(83個の右トランケータブルがあり、4260個の左トランケータブルがあります)。 入力として単一の数値を受け入れ、n番目の右切り捨て可能な素数を生成するプログラムを作成する必要があります。ただし、プログラムが逆方向に配置されて読み取られると、n番目の左切り捨て可能な素数が生成されます。 プログラムを後方に配置するには、プログラムを単語に分割し、単語の順序を逆にします。単語は、任意の数の文字で構成できます。 たとえば、次がプログラムの場合: hello world 1234567890 以下は、可能な限り逆方向の配置として許可されます。 各文字で分割: 0987654321 dlrow olleh 空白での分割: 1234567890 world hello 任意の分割(わかりやすくするためにパイプを追加): hel|lo w|orld 1|23456|7|8|90 908723456orld 1lo whel プログラムを逆方向に配置する場合、他の文字と同様に、すべての空白を考慮して逆にする必要があります。 フォワードテスト入力: 1: 2 2: 3 21: 379 60: 239933 83: 73939133 後方テスト入力: 1: 2 2: 3 39: 647 187: 29173 4260: 357686312646216567629137 プログラムは妥当な時間(1分未満)で実行できる必要があります これはコードゴルフなので、バイト数が最も少ないプログラムが勝ちです!


6
自己検証三角チェッカーボードプログラム
チェッカーボードプログラムは、個々の文字の序数値が偶数から奇数に変化するプログラムで、ラインターミネーター(標準の行末)を除きます。 三角プログラムは、各行に前の行よりも1文字多い追加プログラムで、最初の行には1文字があります。空の入力を処理する必要はありません。 あなたの仕事は、与えられた入力がそれらの基準に準拠していることを検証し、プログラムが基準を満たしている場合は真実、それ以外の場合は偽の何かを出力/返すプログラムを構築することです。 プログラムもこれらの基準を満たしている必要があります。 有効なプログラムの例 G `e @u^ 5r{B ^ cB +$C VA01 ルール 文字のパリティが変化する限り、プログラムは奇数バイトまたは偶数バイトのどちらからでも開始できます。 プログラムは、奇数または偶数の文字で始まるプログラムを検証する必要があります。 Unicode文字の場合、基礎となるバイト値には交互のパリティが必要です。 入力には印刷可能な文字のみが含まれていると想定できます。プログラムに印刷できないものが含まれている場合でも、プログラム自体を検証できます。 プログラムには末尾に改行が1つ含まれる場合がありますが、検証前に削除されていると想定できるため、検証で許可する必要はありません。 標準の抜け穴は禁止されています。 各言語でのバイト単位の最短コードが優先されます。

11
N回目のプログラムのN回
A入力として正の整数の配列が与えられた場合、何度も繰り返されると、配列kのkth(1-index)値を出力するプログラムを生成します。 たとえば、配列がの[1,11]場合、出力はを出力するプログラム1であり、2回繰り返すと出力されます11。print(end="1");Python 3のようなコードは動作します:print(end="1");1をprint(end="1");print(end="1");出力し、11 を出力します すべてのテストケースを解決するための最小コード長の合計が勝利します。メタコードは60秒で500のテストケースを解決し、各ソリューションコードは10秒で返されるはずです。メタコードとソリューションコードは同じ言語である必要はありませんが、メタプログラムが生成するすべてのソリューションは同じ言語である必要があります。 プレテストデータとジェネレーターはここで見ることができます。7日後、提出時間の合計(12:34平均1234など)をランダムシードとして使用し、最終的なテストケースとして別のテストケースを生成します。 最終シードはGMT + 8で7335なので、最終テストデータはこちら

5
それはクインだけではなく、アナグラムクインです!
タスク この課題の課題は、入力を取らないプログラムを作成し、できるだけ多くのアナグラムを使ってアナグラムを作成することです。 スコアは、プログラムのソースコードの有効なクインであるアナグラムの数を可能なアナグラムの総数で割った値、つまり有効なクインであるアナグラムのパーセンテージになります。 標準抜け穴と標準クインの規則が適用されます。 注:プログラムには少なくとも3 文字(3バイトではない)が必要です。 入力 それ自体のクインであるプログラムの各アナグラム(または順列)(つまり、スコアに含めているアナグラム)は、何も入力してはなりません。言語で入力が必要な場合は、小文字のAで構成される文字列がプログラムに与えられると想定できます。ただし、入力をいかなる方法でも使用してはなりません。 出力 nプログラムのソースコードの異なるアナグラムの数は有効なクインでなければなりません。ここnで、スコアに含めているアナグラムの数を表します。 これらのquine-anagaramは、変数に出力を書き込む以外の方法で出力できます。ファイル、コンソール、画面などへの書き込みが許可されます。関数returnも許可されます。 採点例 プログラムのソースコードがであるとしますcode。そして、 code出力code。 coed出力coed。 cdoe出力cdoe。 cdeo出力cdeo。 cedo出力cedo。 ceod出力ceod。 ocde出力ocde。 oced出力oced。 odce出力odce。 odec出力しないodecか、エラーを生成します。 oedc出力しないoedcか、エラーを生成します。 oecd出力しないoecdか、エラーを生成します。 doce出力しないdoceか、エラーを生成します。 doec出力しないdoecか、エラーを生成します。 dcoe出力しないdcoeか、エラーを生成します。 dceo出力しないdecoか、エラーを生成します。 deco出力しないdecoか、エラーを生成します。 deoc出力しないdeocか、エラーを生成します。 eodc出力しないeodcか、エラーを生成します。 eocd出力しないeocdか、エラーを生成します。 edoc出力しないedocか、エラーを生成します。 edco出力しないedcoか、エラーを生成します。 ecdo出力しないecdoか、エラーを生成します。 ecod出力しないecodか、エラーを生成します。 このソリューションのスコアは 受賞基準 最も高いスコアのソリューションが勝ちます!引き分けの場合は、char-count(byte-countではない)が高い方が勝ちます(つまり、コードボウリング)。それでも同点が続く場合は、以前に投稿されたソリューションが優先されます。

2
位置認識
位置認識 あなたの仕事は、その文字(元のプログラムを含む)のすべての順列に対して、元のプログラムに対するすべての文字の位置を出力するプログラムを生成することです。 あなたのプログラムが Derp 出力する必要があります [0, 1, 2, 3] (または同等のもの)。これは、あるDている0番目の位置、eである1、ST rは2NDを、そしてRD。p3 元のプログラムであるが、その文字が入れ替えられた別のプログラムを見てみましょう。 epDr 出力する必要があります [1, 3, 0, 2] ためeにある1元のプログラムの番目の位置、pである3番目の位置、目、およびND。D0r2 元のプログラムに2つの繰り返し文字がある場合: abcda -> [0, 1, 2, 3, 4] その後順列のために、0そして4、アレイ内では昇順でなければなりません。 baadc -> [1, 0, 4, 3, 2] (0 first, then 4) ルール: プログラムには、少なくとも2つの固有の文字が含まれている必要があります。 ほとんどのfloor(n/2)キャラクターは同じであるべきです。 aabb (acceptable) aaaabc (not acceptable, only floor(6/2) = …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.