プログラミングパズルとコードゴルフ

プログラミング愛好家やコードゴルファーのためのQ&A

30
Parrotプログラムを作成する
入力が与えられると、その入力の後に改行が際限なく続きます。 入力は、印刷可能なASCII文字(0x20-0x7E)と改行(0x0A)のみで構成される文字列になります。 入力の長さが0の場合、改行を無限に出力します。 これはコードゴルフなので、各言語で最も少ないバイトです勝ちます!
15 code-golf  string  sequence  combinatorics  fastest-code  number  code-challenge  restricted-source  rosetta-stone  code-golf  arithmetic  decision-problem  integer  factorial  code-golf  arithmetic  decision-problem  integer  bitwise  code-golf  kolmogorov-complexity  code-golf  tips  vim  code-golf  quine  code-generation  code-golf  string  restricted-source  code-golf  string  random  unicode  code-golf  audio  code-golf  ascii-art  code-golf  decision-problem  code-golf  puzzle-solver  code-golf  restricted-source  code-golf  kolmogorov-complexity  permutations  hexagonal-grid  code-golf  string  math  combinatorics  fastest-code  code-golf  restricted-source  code-golf  string  code-golf  arithmetic  code-golf  math  number  code-golf  string  decision-problem  balanced-string  code-golf  binary  code-golf  string  number  code-challenge  restricted-source  code-golf  ascii-art  printable-ascii  interactive  code-golf  string  ascii-art  code-challenge  restricted-source  source-layout  code-golf  arithmetic  tips  functional-programming  golfing-language  code-golf  binary  encryption 

2
デニスに負けてしまいましたか?
伝説によると、ほとんどすべての人がデニスに負けています。そうでない場合、彼らはなります。 今、私はそれらの「ほぼ全員」の一人かどうか興味があります。 回答へのリンクがの形式で提供され/codegolf/[QUESTION ID]/[QUESTION NAME]/#[ANSWER ID]ます。 コードの長さを見つけます。これは、リンク内の回答の最初の行(マークダウンの観点)の最後の数と見なされます。 次に、デニスの回答を検索し、同じ操作を行います。 ここで、入力とデニスの回答コード長を比較し、アウトゴルフされている場合(デニスの1つ以上の回答が入力回答より短いことを意味します)、真実の値を出力し、そうでない場合は偽の値を出力します。 回答と同じ質問にデニスに属する回答がない場合は、偽の値を出力します。 例 リンク:true リンク:(false少なくとも今のところ、変更されたら教えてください) ルール 任意の形式の真実/偽の値を使用できます。 あなたが与えられた答えの質問は、常にcode-golfです。 質問にはデニスの回答がない場合がありますが、入力された回答はデニスのものではありません。 答えの最初の行には常に数字があると仮定できます。

20
ケーキを焼いてください!
これはケーキです: _========_ | | +________+ | | +________+ | | +________+ 幅8、高さ3、深さ1です。 3つの入力からケーキを作成するプログラムを作成する必要があります。最初の入力は、中央にアンダースコアをいくつ=、一番上にsを置くかを制御します。以下は、8ではなく10の幅を持つ最初のケーキです。 _==========_ | | +__________+ | | +__________+ | | +__________+ 2番目の入力は、ケーキの高さを制御します。これは、3ではなく4の高さを持つ2番目のケーキです。 _==========_ | | +__________+ | | +__________+ | | +__________+ | | +__________+ レイヤーの繰り返しに注意してください。 3番目の入力は、その深さを制御します。その| |上に含める数。これは、深さ1ではなく2の3番目のケーキです。 _==========_ | | | | +__________+ | | +__________+ | …

26
キューブを作ってみてください!
これに基づいて:正方形を作ってみてください! これを出力する必要があります: #### # # # ### # # # # #### 「#」は入力に置き換えられます。 「A」を入力すると、次のようになります AAAA A A A AAA A A A A AAAA 「&」を入力すると、次のようになります &&&& & & & &&& & & & & &&&&

10
半分に分けて
あなたは番号が与えられますx。ここで0 <= x <= 2^32 - 1。 バイナリ形式で再帰的に分割した後、数値のリストを10進数で出力する必要があります。 例: 例1: 255 -> 255 15 15 3 3 3 3 1 1 1 1 1 1 1 1 現在のリストはただ255です。 のバイナリ表現は255です1111 1111。分割する1111と1111、10進数では15andであるand が取得されます15。 これらをリストに追加するので、次のようになります255 15 15。 これで数値15と15は入力として機能し、これらの数値は分割されます。 再度実行すると、(3 3両方15のから)が得られます255 15 15 3 3 3 3。 ロジックを続けると、最終リストはになります255 15 15 3 3 3 3 …

8
数値を三角形に分解します
整数所与N、(ここで、最大の三角数の和へと分解のT mが表すMを三角数、または1からの整数の和第M次のように)。 一方、N> 0、 最大可能三角番号検索のT mは、そのようなことのT M ≤N 。 nの三角分解表現にmを追加します。 nからT mを引きます。 たとえば、44の入力は8311の出力を生成します: 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 = 36 <44ですが、1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 = 45> 44です。 …

13
入力を含むクインを印刷します
仕事 あなたが唯一の文字からなる入力中の文字列与えられますaにしz、入力が正規表現にマッチしますすなわち/^[a-z]*$/。 出力は同じ言語の完全なプログラムである必要があり、そのソースコードには入力が含まれており、適切なものです。 例 プログラムは入力abcと出力を受け取ります。 ...abc... 上記は、入力も出力も行わない同じ言語の完全なプログラムである必要があります。 ...abc... すなわち、それ自体を出力します。 得点 これは、コードゴルフ。バイト単位の最短回答が優先されます。 参照資料 適切な馬とは何ですか?
15 code-golf  quine 

1
ライブラリを検索するcode-golferの方法
チャレンジ: 私の音楽コレクションには何千もの曲があり、幸運なことに、私のお気に入りのプレーヤーには検索機能があります。また、素晴らしい思い出があります。コレクションのすべての曲のタイトルを思い出すことができます。しかし、私はとても怠け者で、タイプするのが好きではありません。それぞれの余分なキーストロークは面倒です! 1曲を分離するために検索する必要がある最短文字列は何ですか?検索時に入力を最小限に抑えるために使用できるキーのリストを記憶してください。 これはcode-golfなので、最短のコードが優先されます。 ルール: 曲のタイトルの入力リストが与えられたら、次の制約に従って検索キーのリストを生成します。 各曲のタイトルには検索キーが必要です。 出力リストの文字の総数は、できるだけ少なくする必要があります。 私の好きな音楽プレーヤーはfoob​​ar2000です。 検索機能では大文字と小文字は区別されません。(appleはと同じですaPpLE)。 各検索キーは、スペースで区切られた任意の順序の1つ以上の「単語」で構成する必要があります。 各単語は、対応する曲のタイトルのサブストリングである必要があります。 同じ部分文字列が複数回指定されている場合、対応する曲のタイトルで何度も発生する必要があります。 部分文字列自体にスペースが含まれる場合、その部分文字列を引用符で囲む必要があります。 ヒント: 多くの場合、一部の曲のタイトルには、ルール2を満たす複数の検索キーがあります。このような場合、いずれかのキーが機能しますが、すべてをリストするとブラウニーポイントが得られます。 入力リストはASCII文字のみであると想定できますが、ブラウニーポイントはUTF-8互換性のために与えられます。 ルール3は従うのが難しかったですか?仕組みは次のとおりです。 コードスニペットを表示 +----------------------+ +--------+ +----------------+ +------------------------------------+ | Input | | Output | | Statistics | | Explanation | |----------------------| |--------| |----------------| |------------------------------------| | | | Search | | Key | # of | …

10
チャコールでのゴルフのヒント
木炭は、ASCIIアートの課題に特化したASCII専用およびDLoscによって作成された言語です。 チャコールでゴルフをするためのヒントはありますか?明らかに、すべてではないにしてもほとんどの言語に適用できるものではなく、特に炭に関連するヒントを探しています。
15 code-golf  tips 

30
一時停止
課題は、入力を印刷し、任意の時間待機し、入力を印刷し、最初に待機した時間の2倍の時間待機し、再度入力を印刷することです。最初の遅延は1時間未満である必要があり、後続の遅延の精度は+/- 5%でなければなりません。それ以外は、遅延時間に制限はありません。 例: 入力:hi。 出力:hi(1msポーズ)hi(2msポーズ)hi(4msポーズ)hi(8msポーズ)hi(16msポーズ)など 許可されているもの: hi(1分間の休止)hi(2分間の休止)hi(4分間の休止)hi(8分間の休止)hi(16分間の休止)など 入力はプログラムの開始時に指定する必要があり(STDIN、コマンドラインパラメーター、関数パラメーターなど)、文字列になります。 初期遅延を0にすることはできません。
15 code-golf  string  date 

15
チープエニグママシン(警官)
強盗の投稿、Chepo Enigmaマシン(強盗) 警官の提出は、1バイトのデータを受け入れ、1バイトのデータを返すプログラム/関数で構成されます。可能な入力はすべて、一意の出力を生成する必要があります。(つまり、関数は全単射でなければなりません) 強盗は、可能な限り短いコードを使用して、あなたの逆関数を作成しようとします。だからあなたの目的は、あなたの機能を逆転させることを困難にすることです。 ハッシュまたは暗号化のみを目的とするビルトインを使用することはできません。 バイト数は64バイトを超えることはできません。0バイトのソリューションは勝ちません。 入出力フォーマット 8ビット(0または1)、または範囲1〜256、0〜255、または-128〜127の10進整数。標準I / OまたはファイルI / Oを使用できます。関数は、出力として値を返すこともできます。入力と出力は同じ範囲(バイナリ、1〜256、0〜255または-128〜127)に属している必要があります。この範囲を入力および出力に使用するには、強盗も必要です。 得点 あなたに対する最高の強盗の試みのそれに対するあなたのバイト数の比率。最低スコアが勝ちます。 強盗があなたを倒そうとした場合にのみ、(警官として)勝利する資格があります。(この強盗はあなたかもしれません) 例 C ++、0〜255の範囲、31バイトを使用 int x; cin>>x; cout<<(x+1)%256; C ++での強盗の送信、32バイト int f(int x) {return x?x-1:255;} 同じ言語または類似のアルゴリズムを使用することは必須ではありません これにより、警官と強盗の両方に31/32 = 0.97のスコアが与えられます。

4
Sp | Lit wo(r)dS、S(P)lit wO | rds
m | Y bR | ainはWe | iRdです。F(o)RT(h)E La | sT fi(v)e YE | ars O | R s | o、(I)ha | ve C(u)T wO | rds in h(a)lf wh | En (I)s(e)e Th | em。Wh | EN Do |を始めたので、To | oK a meN | TaLの努力-B(u)TIはほとんどN(o)Tではありません。N(o)w、私は私の頭の後ろにあります、a(n)dはほとんどありません|それはありません。しかし、これは大きな挑戦だと思いました。 定義 このチャレンジでは、サンセリフ体のフォントでの幅の判断に基づいて、各文字にポイントスコアが与えられます。この幅を使用して、単語を等しい幅の2つの半分にカットします。このチャレンジが使用する文字は、大文字と小文字のアルファベット、アポストロフィ、およびハイフンです。 Width Characters …
15 code-golf  string 

6
キーボードをシミュレートする
キーボードに問題があります(ブラウザに問題がある可能性が高い)。新しいテキストフィールドをクリックして、すべてのテキストを入力し始めると、逆方向に出てくることがあります。非常に短い時間の後(チャレンジのために10ミリ秒と言います)、再び前方入力を再開します。入力を開始しても最初はカーソルが動かないため、すべての文字がテキストフィールドの先頭に挿入されます。 たとえば、python入力pyt中に最初の10ミリ秒で入力した場合、結果は次のようになります。 hontyp 仕事 あなたの仕事は、この動作をできるだけ少ないバイトでシミュレートすることです。 入力 合理的な方法で入力を行うことができます。ただし、入力を2つの別個のフィールドとして使用することはできません。プログラムが入力を許可し始めると、10ミリ秒の遅延が始まります。つまり、入力が許可される前に前処理を行う必要がある場合がありますが、10ミリ秒にはカウントされません。 平均的に10ミリ秒であり、合理的に指定されたコンピューターでは1ミリ秒以上の時間の1%以内でオフになっていれば、タイミングに多少の寛容さが認められます。 出力 適切な方法で文字列を出力できます。ユーザーが入力しているときにライブで更新するか、入力を終了した後に結果を出力することができます(改行またはファイルの終わり^D)。 テストケース これらのいくつかは、このCMCによって19番目のバイトで生成されました First 10 | after | result bra in-flak in-flakarb ap ple plepa code- golf golf-edoc no ne neon we st stew ai med media draw back backward
15 code-golf  string  date 

2
直線を描く
直線を含む単純なASCIIアートイメージを描画します。これとこれに似ていますが、仕様が異なります。 入力 コードに合わせてこの入力形式を変更できます。 整数 width 整数 height 整数 x0 整数 y0 整数 x1 整数 y1 出力 ピクセルからのラインを含む、指定された幅と高さの塗りつぶされたASCIIアートイメージ (x0, y0)への(x1, y1)。 テキスト出力の標準形式はすべて受け入れられますが、組み込みの線描​​画関数は使用しないでください。 詳細 線は、単一の印刷可能な文字(など#)を使用して描画する必要がありますが、背景には別の文字(.)が使用されます。画像サイズが正しいように、必要な末尾の文字を印刷する必要があります。 ピクセル座標は0インデックスまたは1インデックスにすることができ、画像の任意のコーナーから開始できます。線は、開始ピクセルと終了ピクセルの中心を結ぶ幅0のサブピクセル線を想像して描画する必要があります。線が入るすべてのピクセルを塗りつぶす必要があります。 勝ち 通常のコードゴルフ規則。最短のコードが優先されます。 例 IN: width, height, x0, y0, x1, y1 IN: 7, 6, 0, 0, 6, 5 OUT: .....## ....##. ...##.. ..##... .##.... ##..... IN: 3, …

23
リスト内のセットの出現回数を数える
空でない文字列のセットと文字列のリストが与えられた場合、リスト内でそのセットが何回出現するか、つまり、リストのアイテムでセットを作成できる回数を調べます。リストのすべての要素は一度しか使用できません。 ヒント:セットは、一意のアイテムの順序付けられていないリストです。 デフォルトの入出力ルールが適用されます。 外部ライブラリは許可されていません。コンパイラ/インタープリターの標準ライブラリは問題ありません。これはコードゴルフであるため、最短の解決策が重要です。 テストケース: ["apple", "banana"], ["apple", "pear", "apple", "banana", "banana"] => 2 ["apple", "banana"], ["apple", "pear", "apple", "banana", "apple"] => 1 ["apple", "banana", "pear"], ["apple", "banana", "kiwi", "apple"] => 0 ["coconut"], [] => 0 編集:入力パラメーターがローカルスコープで定義されていることを示す文を削除しました。これは、上記でリンクされているデフォルトのIOルールと矛盾します。

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