タグ付けされた質問 「code-golf」

コードゴルフは、ソースコードの最小バイトで特定の問題を解決するための競争です。

26
かっこいい2進数
先行ゼロのないバイナリで正の整数を表し、すべてをaで、すべてをa で置き換える1と、すべての括弧が一致しますか?(0) ほとんどの場合、彼らはしません。たとえば、9は1001バイナリであり())(、最初の2つの括弧のみが一致するになります。 しかし、時々一致します。たとえば、44は1011002進数で、これはになり()(())、すべての左括弧に対応する右括弧があります。 正の10進整数を取り込んで、数値の2進括弧バージョンにすべての一致する括弧がある場合に真理値を出力または返すプログラムまたは関数を作成します。そうでない場合は、偽の値を出力するか返します。 バイト単位の最短コードが優先されます。 関連するOEISシーケンス。 100以下の真実の例: 2, 10, 12, 42, 44, 50, 52, 56 100以下の偽の例: 1, 3, 4, 5, 6, 7, 8, 9, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, …

4
変異センザンコウ
これはコードゴルフの課題であり、機械学習を説明するために馬または馬を改造する馬のように振る舞うプログラムを考案する必要があります。 バックグラウンド ここで説明する「センザンコウゲーム」と呼ばれる基本的な人工知能プログラムがあります。基本的なアイデアは、プログラムを初めて実行するときに次のことを尋ねることです。 OK、何か考えてください それはセンザンコウですか? その後、次のいずれかを返信できます。 はい その場合、それは言います: 良い。とても簡単でした。 または、そうでない場合: ああ。さて、あなたは勝ちます-あなたは何を考えていましたか? あなたが言うかもしれない: 犬 それに言うだろう 犬について質問してください。犬とセンザンコウの違いがわかります。 返信するかもしれません アリを食べますか? それから尋ねます: 犬の答えは何ですか? あなたが言うだろう いや そしてそれは言うだろう ありがとう 次回の実行時に、上記の質問をし、そのような質問のバイナリツリーを構築します。 チャレンジ 背景は十分です。この課題は、自己修正のセンザンコウプログラムを作成することです。ルールは次のとおりです。 プログラムの出力(上記の説明を参照)はになりますSTDERR。最終的な応答は常に「良い。それはすっごく簡単だった」です。または「ありがとう」。この後、プログラムの現在のバージョン、または質問をに組み込んだプログラムの新しいバージョンを出力する必要がありますSTDOUT。書き込みをサポートしていない言語で書かれた無回答STDOUTおよびSTDERRまたはからの読み取りがSTDIN有効になることはありません。 言い換えると、UNIXの場合、次のようにプログラムを呼び出すことができます。 例: $ mylanguage myprogram > myprogram.1 [dialog goes here] $ mylanguage myprogram1 > myprogram.2 [dialog goes here] プログラムは指定されたプロンプトを正確に使用する必要があります(プロンプトを短くするとスキルが表示されないため)。プロンプトは、次のとおりです(引用符なし、および%sが置換されます)。 リスト: "OK, please think …
28 code-golf  quine 

11
枢機inalと序数、1〜100
これは、圧縮筋肉を伸ばす簡単な方法です。コード(完全なプログラム)は、1から100までのすべての基数のスペル表記された英語表現を出力し、次に1から100までのすべての序数を出力する必要があります。ハイフン付き。各リストは単一の大文字で始まり、ピリオドで終わる必要があります。2つのリストは改行で区切る必要があります。 わかりやすくするために、次の正確なバイトストリームを生成する必要があります。 One, two, three, four, five, six, seven, eight, nine, ten, eleven, twelve, thirteen, fourteen, fifteen, sixteen, seventeen, eighteen, nineteen, twenty, twenty-one, twenty-two, twenty-three, twenty-four, twenty-five, twenty-six, twenty-seven, twenty-eight, twenty-nine, thirty, thirty-one, thirty-two, thirty-three, thirty-four, thirty-five, thirty-six, thirty-seven, thirty-eight, thirty-nine, forty, forty-one, forty-two, forty-three, forty-four, forty-five, forty-six, forty-seven, forty-eight, …

15
二項の二乗を示す
(任意の方法で)2つの異なる自然数(任意の妥当なサイズ)が与えられ、以下の例のようにそれらの合計の2乗を(任意の方法で)出力します。 4と3の場合、出力: 12 12 12 12 9 9 9 12 12 12 12 9 9 9 12 12 12 12 9 9 9 16 16 16 16 12 12 12 16 16 16 16 12 12 12 16 16 16 16 12 12 12 16 16 16 16 12 12 …

20
大文字なしで大文字を印刷する
おっ、おっ、おっ...プログラムの入力を停止します。いいえ、「印刷ABC...」という意味ではありません。私は米国の首都について話している。 具体的には、次のリストに示されているすべての都市/州の組み合わせを印刷します 任意の順序で Baton Rouge`LA_Indianapolis`IN_...どの単語が都市であり、どの州であり、どのエントリであるかが明確である限り、区切り文字を選択します(たとえば、許容されます) ABCDEFGHIJKLMNOPQRSTUVWXYZソースコードのいずれも使用せずに 出力はSTDOUTまたは同等のものである必要があります。 編集-おっと! <edit> (下記のようにアニマニアックスのおかげで、)メモリからリストを入力している間、私は明らかにされ、ワシントンD.C.を無視できません州都が、ある曲の中で、時には(「大文字のリスト」に含まれています以下のMathematica 回答のように)。このリストにその都市を含めるつもりでしたが、どういうわけか見逃しました。その結果、答えはありません、その都市を持っているが罰せられることはないだろう、と答えないのいずれか、その都市を持っているが罰せられることはありません。基本的に、出力にWashington, DC含まれるかどうかはあなた次第です。ごめんなさい、皆さん! </edit> Baton Rouge, LA Indianapolis, IN Columbus, OH Montgomery, AL Helena, MT Denver, CO Boise, ID Austin, TX Boston, MA Albany, NY Tallahassee, FL Santa Fe, NM Nashville, TN Trenton, NJ Jefferson, MO Richmond, VA Pierre, SD Harrisburg, …

3
早く!ブラックホールを脱出せよ!
87,539,319年であり、今では孤独な宇宙遊泳が当たり前になっています。多くの人が自分で宇宙に飛び込み、背中のジェットパックだけで推進され、進行中にパソコンとキーボードでコースをプログラミングします。 あなたはそのような人です。あなたは、美しく、静かな宇宙遊泳に出かけましたが、突然、あなたはブラックホールの重力に捕らわれました! あなたがこのブラックホールに向かって急降下し、内側に向かってより速く螺旋を描いているとき、あなたが生き残るための唯一のチャンスは苦痛のメッセージを放送することであり、近くの船があなたを救助することを願っています。 そのため、キーボードをブレークアウトし、プログラムを打ち解き始めます。 プログラムは任意の言語で作成できHELP!、stdoutに出力する必要があります(PCはすべてのstdoutを宇宙の奥深くまで放送します)。 ただし、ブラックホールの近くにいると、キーボードはゆっくりと細断されます! 以下のようなQWERTYキーボードを使用しており、ブラックホールが左側にあると仮定します。 左右のシフトは2つの異なるキーであることを忘れないでください。 キーを押すたびに、キーボードの左端の列(左端の赤い線で覆われたキー)がはぎ取られ、ブラックホールに飛び込みます。 だから、あなたの最初のキー入力はキーボードの任意のキーかもしれないが、その後の以降なしから左端 Tab、Caps、Shift、Ctrlまたは`キーを使用することができるすべてで。(r-shiftおよびr-ctrlは引き続き使用できます) 次キー押下後、キーは1、Q、A、ZおよびAlt深淵に投げつけされ、その後、使用されなくてもよいです。その後、あなたが失うSpace、X、S、W、2など。 明らかに、プログラムをできるだけ早く完了して、レスキュー時間が長くなるようにします。したがって、これはコードゴルフであり、キーを押すことで最短のプログラムが勝ちます! 各回答にはキー入力のリストが含まれている必要があるため、私の回答がこのプログラムであった場合(言語squardibblyack) !HELP\. キーリストは次のようになります。 Shift!HELP リリースシフト \. 長さ:8 私はこの挑戦が難しすぎるかもしれないと心配していますが、提出された種類の答えを見たいです!

30
語長の水平グラフ
入力 任意の数のスペースで区切られた単語のリスト。 出力 n番目の行が*n番目の単語と同じ数のアスタリスク()で構成される水平ASCIIアートグラフ。 使用例 >信号のユーザ入力は、入力してプログラムをテストしてはいけません。 > This is an example histogram of word length **** ** ** ******* ********* ** **** ****** > a aa aaa aaaa aaaaa * ** *** **** ***** > double space example ****** ***** ******* リファレンス実装 仕様に疑問がある場合、プログラムの出力は、すべての入力の下で以下のプログラムの出力と正確に一致する必要があります。 puts gets.chomp.split.map{|word| '*' * word.length}.join("\n")

19
月曜日のミニゴルフ#1:逆フィボナッチソルバー
月曜日のミニゴルフ:毎週月曜日に(願わくば!)投稿された一連の短いコードゴルフチャレンジ。 A フィボナッチ様配列は、有名なのと同じ方法を用いて得られるフィボナッチ数列。つまり、各数値F(n)は、シーケンス内の前の2つの数値を加算する(F(n)= F(n-1)+ F(n-2))か、次の2つの数値を減算する(F (n)= F(n + 2)-F(n + 1))。主な違いは、これらのシーケンスは任意の2つの数字で開始できることです。これらのシーケンスのゼロインデックス付けは議論の余地がありますが、今のところ、このルールを使用します。 フィボナッチ数列の0番目の数字は、直前の数字よりも小さい最後の数字です。 例として、フィボナッチ数列はとして書くことができる1, 0, 1, 1, 2, 3, 5...ので、数列の0番目の数字はlone 0です。 チャレンジ チャレンジの目標は、3つの整数を任意の形式で取り込むプログラムまたは関数を作成することです。 AおよびB、シーケンスの生成を開始する2つの数値。 N、出力する結果シーケンスの長さ。 そして、0番目から始まるシーケンスの最初のN個の数値を出力します。 詳細 A、B、およびNは、視覚的に分離されている限り、任意の順序および形式で使用できます。別の順序/形式を使用する場合は、それが何であるかを指定してください。 A、B、およびNは常に正の整数であると想定できます。 Nは100以下であり、結果のシーケンスにはが含まれないと想定できますx >= 2^31。 場合Aがより大きいB、次いでBは、シーケンス内の0番目の数です。 出力は、スペース、コンマ、改行で区切る必要があります。 末尾のスペースまたは改行は使用できますが、末尾のコンマは使用できません。 テストケース 例1: 8 13 10 8 13前よりも大きい数が見つかるまで逆方向に作業すると、が得られ13 8 5 3 2 1 1 0 1ます。したがって、0このシーケンスの0番目の数値です。これから前進し0て、次の9人のメンバーを印刷します。 0 …

23
アシミメーションジャンピングジャック
これは私の最初の挑戦ですので、私はそれをかなりシンプルにしています。 telnet towel.blinkenlights.nlコマンドラインに入力してEnterキーを押したことがあれば、アシミエーションの喜びを体験できます。アシミエーションとは、非常に単純に、アスキーアートを使用してアニメーションを行うことです。今日は、ジャンピングジャックをする人の非常に基本的なアシミエーションを行います。 2つのascii写真があり、それらを1つのasciimationにまとめます。番号1: _o_ 0 / \ 2番: \o/ _0_ <blank line> 2番目の行の最後に空白行があることに注意してください。 したがって、プログラムは次の手順を実行する必要があります。 コンソール画面をクリアします。 正しいASCIIアート画像を印刷します。 フラグまたは何かを設定して、次に他の画像を実行するようにします。 しばらく(約1秒)待ちます。 1に進みます。 ルール あなたのプログラムは(理論的に)無限ループでなければなりません。 使用するプログラミング言語は、このチャレンジが投稿される前に作成されている必要があります。 これはcode-golfであるため、バイト単位の最短コードが優先されます。 標準の抜け穴が適用されます。 楽しい!

10
視覚的な長い乗算
カウント以外の何もすることなく、2つの整数の長い乗算を実行する良い方法があります。これは時々インターネット上で共有されます。各数字の数字は、2本の数字が90度の角度になった斜めの線の束として書きます。次に、発生した個別の列の交差点を数えるだけです。これはおそらく図で明らかになります。以下は計算の例です21 * 32: 「ビジュアル/グラフィックの長い乗算」を検索すると、さらに多くの例が見つかります。 この課題では、ASCIIアートを使用してこれらの図を生成します。同じ例の場合、出力は次のようになります。 \ / X / \ / X / \ X / X X X / \ / / X X X / / X \ / X / \ X / \ X X / X \ / \ いくつかの例(以下を参照)からこれらの構成規則を理解するのがおそらく最も簡単ですが、ここでいくつかの詳細を示します。 交差するセグメントはX、ラインの非交差セグメント/または\。 最も外側の交差点の後に、ちょうど1つのセグメントがあるはずです。 異なる桁に属する交差点の間に正確に1つのセグメントが存在する必要があります。ゼロ桁がある場合、これらは連続/または\セグメントになります。 正の入力(少なくとも2 16や2 …

19
マイクロ秒を時間:分:秒などの形式にします
以下は、今日Stack Overflowで出された質問に触発されたものです。 マイクロ秒数0 <= n <= 86400000000(例12345678900)を指定すると、フォーマットされた文字列hh:mm:ss:000:000(例:)を出力します03:25:45:678:900。 0 -> '00:00:00:000:000' 12345678900 -> '03:25:45:678:900' 86400000000 -> '24:00:00:000:000' Pythonで209バイトのソリューションがありますが、それより低くすることはできますか?
28 code-golf  date 

8
ASCIIトポロジpt 1:頼りにできますか?
深刻な問題があります。非常に重要な番号を保持するテキストファイルがいくつかあります。すべての重要な番号です。そして、2、3。 これらの数字はとても重要だったので、私はそれらをそれらの新しい10進数または2進数に委ねることができませんでした。次のように、各数値を単項でエンコードしたままにしました。 +--+ | | +---+ +----+ | | | | | +---+ +-------+ ~/two.txt シンプルで信頼性の高い番号:2の2つのASCIIループ 以下に、私が手作業で作成した例をいくつか示します。 1: +---+ | | +--+ | | | +--+ | | | | | | | +--+ +--+ | | +---------+ 三: +---------+ | +-----+ | | | +-+ | | | | …

30
興味のある人
バックグラウンド 関心のある人は CBSの犯罪ドラマであり、最近の私のお気に入りのテレビ番組です。 このショーは、億万長者のプログラマーであるハロルド・フィンチという男と、特殊部隊のベテランで元CIAの工作員であるパー​​トナーのジョン・リースに関するものです。このプログラマーは、暴力犯罪が発生する前に予測する「機械」と呼ばれる感覚的なAIを作成しました。世界中のすべての監視カメラと電子通信を監視および分析することにより、地球上のすべての人を常に追跡します。 ハロルドは、米国政府がテロ行為を事前に検出するためにマシンを構築しました。国家安全保障に関連するかどうかに基づいて、予測する犯罪をリストに分割します。関連するケースは政府によって処理されますが、「無関係な」リストは毎日削除されるようにプログラムされています。 ハロルドは、「無関係な」リストに対処することを望んで、自分自身のために小さなバックドアを作りました。このバックドアにより、マシンはハロルドに最も近い公衆電話を呼び出し(毎日1回程度)、社会保障番号を読み取ります。このSSNは、計画的な犯罪の一部として命が危険にさらされている人、またはそのような犯罪を計画している人に属します。 チャレンジ 入力を行わず、30個のランダムな電話番号とSSNを出力するプログラムを作成します(以下を参照)。 出力 「毎日」印刷されるテキストは2行あります。 Crime predicted: 555-55-5555 Calling: 1-555-555-5555 改行が続きます このプロセスは1つの「月」(30「日」)の間繰り返す必要があります。 電話番号 すべての電話番号には次の要素が必要です。 米国の国コード(最初の数字)が必要です。 ランダムな市外局番(3桁の最初のセット)が必要です。 自身が電話番号の最初の3桁であるべきであるが555、4つの乱数によってその後に続きます。 以下に注釈付きの例を示します。 1-814-555-3857 | | | | | | | | | | | +----------> random four digits | | | | | +--------------> the set 555 | | …
28 code-golf  random 

20
3進数字を循環させることによるテキストの難読化
この課題の目標は、入力テキストを取得し、以下のメソッドを使用して暗号化して結果を返すための最短の関数/プログラムを作成することです。 例として、文字列を使用しますhello world。 最初に、入力テキストを取得します。 hello world 2番目に、文字列を3進数(基数3)に変換します。このキーを使用します: a = 000 b = 001 c = 002 d = 010 e = 011 f = 012 g = 020 ... w = 211 x = 212 y = 220 z = 221 [space] = 222 このキーを使用するhello worldと021011102102112222211112122102010、次のようになります。 h e l l …

4
アポロニアのガスケットを描く
3つの相互に接する円が与えられた場合、それら3つすべてに接する2つの円を常に見つけることができます。これら2つはアポロニア円と呼ばれます。アポロニアの円の1つが実際に3つの初期円の周りにあることに注意してください。 3つの接線円から始めて、次のプロセスでアポロニアンガスケットと呼ばれるフラクタルを作成できます。 最初の3つの円を親の円と呼びます 親円の2つのアポロニア円を見つける 各アポロニア円について: 親円の3つのペアの各ペアに対して: アポロニアン円と2つの親円を新しい親円のセットと呼び、ステップ2からやり直します。 たとえば、同じサイズの円から始めて、次のようになります。 ウィキペディアで見つかった画像 必要な表記法がもう1つあります。中心(x、y)の半径rの円がある場合、その曲率をk =±1 / rとして定義できます。通常、kは正ですが、負のkを使用して、ガスケット内の他のすべての円を囲む円を示します(つまり、すべての接線が内側からその円に接触します)。次に、3組の数字で円を指定できます:(k、x * k、y * k)。 この質問の目的のために、正の整数kと有理xおよびyを仮定します。 このようなサークルのその他の例は、Wikipediaの記事に記載されています。 また、この記事には、一体型ガスケットに関する興味深いものがあります(他の面白い点もあります)。 チャレンジ 4つの円の指定が与えられ、それぞれがのようになります(14, 28/35, -112/105)。eval必要に応じて単純に入力できるように、便利なリスト形式と除算演算子を使用できます。4つの円は実際に互いに接しており、最初の円は負の曲率を持っていると仮定できます。これは、他の3つのアポロニア円が既に与えられていることを意味します。有効な入力例のリストについては、チャレンジの下部をご覧ください。 この入力が与えられると、アポロニアンガスケットを描画するプログラムまたは関数を記述します。 関数引数、ARGVまたはSTDINを介して入力を取得し、画面上にフラクタルをレンダリングするか、選択した形式で画像ファイルに書き込むことができます。 結果の画像をラスタライズする場合、各円は少なくとも400ピクセルで、最大の円の周りに20%未満のパディングが必要です。半径が最大入力円の400未満の円、またはピクセルより小さい円のいずれか早い方に到達すると、再帰を停止できます。 完全なディスクではなく、円の輪郭のみを描画する必要がありますが、背景と線の色は任意です。アウトラインは、外側の円の直径の200倍より広くしてはなりません。 これはコードゴルフなので、最短の回答(バイト単位)が勝ちです。 入力例 Wikipediaの記事のすべての不可欠なガスケットは、所定の入力形式に変換されています。 [[-1, 0, 0], [2, 1, 0], [2, -1, 0], [3, 0, 2]] [[-2, 0, 0], [3, 1/2, 0], [6, …

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