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

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

15
ポールとチキンを食べる5人の友達を見つける
Paulはあなたのベルギーの知人の一人であり、次の5つの文字列のうち少なくとも1つを出力するプログラムを作成してほしいと考えています。 12496=>14288=>15472=>14536=>14264 14264=>12496=>14288=>15472=>14536 14536=>14264=>12496=>14288=>15472 15472=>14536=>14264=>12496=>14288 14288=>15472=>14536=>14264=>12496 それは彼が最も誇りに思っている友人を表し、彼は彼らと一緒に食事をしたいと思います。ポールはまた、6番は完璧であり、それだけが使用する価値があると考えています。したがって、コードで「6」以外の数字を使用することはできません(0〜5および7〜9は禁止されています)。あなたのプログラムは何も入力できません。出力には、文字列の前後にゴミが含まれる場合がありますが、上記の文字列の少なくとも1つが含まれている必要があります。 たとえば、これは有効な出力です。 220frefze f**14288=>15472=>14536=>14264=>12496**fczfe fz**15472=>14536=>14264=>12496=>14288**zfe fzehth 私はこれをどのように解決すると期待しているのかという質問で「軽く」ほのめかしましたが、どのように知っていますか?もっと良い方法があるかもしれません...楽しんでください。 これはcode-golfです。バイト単位の最低スコアが勝ちます。

11
テキストのグリッドの対角線を並べる
テキストの長方形のグリッドが与えられた場合、左上から右下に向かう対角線を列に並べ、すべての対角線の最右端の文字が水平になるようにします。インデントにはスペースを使用します。 たとえば、テキストの入力グリッドが abcd 1234 WXYZ あなたは対角線をラインアップしたいW、1X、a2Y、b3z、c4、およびdこの出力を与える列に: ab 123c WXYZ4d すべての対角線の最も右下の文字がWXYZ4d同じレベルにあることに注意してください。 詳細 テキストの入力グリッドのサイズは少なくとも1×1で、すべての行は同じ長さになります。 入力グリッドは、複数行の文字列または単一行の文字列のリストとして取得できます。 入力グリッドには、印刷可能なASCII文字(スペースを含む)のみが含まれます。 出力には、オプションで末尾の改行が1つ含まれる場合がありますが、他の空行はありません。 出力の行には、オプションで末尾スペースを含めることができますが、不要な先頭スペースを含めることはできません。 その他の例 空行は例を示します。各入力の直後に出力が続きます。 123 456 789 1 452 78963 123.?! 456??! 789!!! 123. 456??? 789!!!!! **@ @ ** @ @ /\/\ \/ / / /\ \/\/ / \/\ / / / \/\/\/\ 12 34 56 …
15 code-golf  string  grid 

2
スタック状態図を解く
スタック状態図は、1つのスタックの値が他のスタックにどのように変更されるかを示します。たとえば、これはスタック状態図です: 3 0 2 1 0 これは、最初に3つの値(3パーツ)を含むスタックがあることを意味します。これらの値には0から2までのインデックスが付けられ、先頭に0が付きます2 1 0。次の部分0 2 1 0では、スタックの最終状態について説明します。元々スタックの最上位にあった値も、後方にコピーされています。 これらの変換は、いくつかのデータ型をサポートするスタックで発生します。 「値」タイプ。これは元々スタックにあったものです。これは文字列、整数などでもかまいませんが、その値を知る必要はありません。 「リスト」タイプ。これは、任意のデータタイプの値を含むリストです。 この変換をモデル化するには、次の操作が許可されます。 S:スタックの上部にある2つの値を交換します。2 1 0→2 0 1 D:スタックの一番上に値を複製します:1 0→1 0 0 R:スタックの一番上の値を削除します。2 1 0→2 1 L:一番上の値を、その値を含む1要素のリストに変換します。2 1 0→2 1 (0) C:スタックの上位2つのリストを連結します。2 (1) (0)→2 (1 0) U:リストのすべての値をスタックに配置します。2 (1 0)→2 1 0 これらは、他のコマンドが使用されない限り、Underloadコマンドと同等~ : ! a * ^です。 …

9
傾斜2進数
整数を指定するとn、n0インデックスまたは1インデックスの最初の傾斜2進数を出力します。それらは、それらがどのように生成されるかからこれと呼ばれます: 数字を上下にバイナリで書きます(右揃え): ........0 ........1 .......10 .......11 ......100 ......101 ......110 ......111 .....1000 ......... 次に、各対角線を左下から右上に向けて、各最終桁が対角線の最終桁になるようにする必要があります。ここでマークされた第四対角(ゼロインデックス付き)だxあるのは、100: ........0 ........1 .......10 .......11 ......10x ......1x1 ......x10 ......111 .....1000 ......... 上向きに傾斜する対角線は次のとおりです。 0 11 110 101 100 1111 1010 ....... 次に、10進数に変換して、 0, 3, 6, 5, 4, 15, 10, ... OEIS A102370 これはcode-golfであるため、バイト単位の最短コードが優先されます。

16
ウィルソンスコア間隔を計算する
ウィルソンスコア間隔はベルヌーイ試験(:ベルヌーイの試験は、正確に2つの結果が可能である、裁判での集合における成功の割合に基づいて、成功確率の信頼区間である成功または失敗)。間隔は次の式で与えられます。 式によって与えられる2つの値は、間隔の上限と下限です。n Sとn Fはそれぞれ成功と失敗の数であり、nは試行の総数です(n S + n Fに相当)。zは、必要な信頼レベルに依存するパラメーターです。このチャレンジのために、z = 1.96が使用されます(95%の信頼区間に対応)1。 非負の整数n Sおよびn Fを指定すると、ウィルソンスコア間隔の境界が出力されます。 ルール 出力は、浮動小数点演算の不正確さによる潜在的な問題を無視して、言語の浮動小数点実装の制限内で、真の値に対して可能な限り正確でなければなりません。ご使用の言語が任意精度の演算に対応している場合、少なくともIEEE 754の倍精度演算と同じ精度でなければなりません。 入力は言語のネイティブ整数型の表現可能な範囲内にあり、出力は言語のネイティブ浮動小数点型の表現可能な範囲内にあります。 nは常に正です。 出力の順序は重要ではありません。 テストケース フォーマット: n_s, n_f => lower, upper 0, 1 => 0.0, 0.7934567085261071 1, 0 => 0.20654329147389294, 1.0 1, 1 => 0.09452865480086611, 0.905471345199134 1, 10 => 0.016231752262825982, 0.3773646254862038 10, 1 => 0.6226353745137962, …

4
猫に帽子をかぶせる
来たる冬のbashイベントに触発された オブジェティブ 帽子を追加 ^、´または`入力の各ワードにおける単一母音へ。 ルール hatとvowelランダムに選択されなければなりません。各帽子は同じ確率(33%)で表示される必要があり、母音は単語の有効な母音内で同じ確率でなければなりません(単語に2つの有効な母音がある場合、それぞれ50%が選択される可能性が高い)-または最も近いあなたの言語が持っていること。 AEIOUaeiou母音のみと見なされます(ごめんなさいy) 入力に帽子のある母音はルールに干渉しません(子音と見なすことができます) 入力に母音がない場合、変更されません 大文字を保持する必要があります。 例 winter> wintér bash> bâsh rhythm> rhythm rng ftw> rng ftw cat in the hat> cât ìn thê hát dès> dès tschüss> tschüss principî> prìncipî PROGRAMMING PUZZLES & code golf>PROGRÂMMING PÚZZLES & codé gòlf 勝ち これはコードゴルフなので、最短のコードが勝ちます
15 code-golf 

2
ラザニアを確認する
シナリオ 私はよくラザニアを調理しますが、いくつかの間違いもあります。私はこれらの障害を頻繁に繰り返すので、すべてを正しく行ったかどうかをチェックするプログラムを実行できると思いました。 有効なラザニア 有効なラザニアは 少なくとも5列幅 少なくとも4層の高さ 余分なチーズを除く 最上層はチーズ( ,) 2番目の層はソースです(@またはで表されます#) その後、層が交互になります(1層のソース、1層の麺(~またはで表されます-)) 各列には、1層または2層のチーズを入れることができます プログラム すべき 入力としてラザニア文字列を取ります 複数行の文字列 文字列配列 文字列には文字のみが含まれます ,@#~- 長方形 必要に応じてスペースを埋めます 有効なラザニアかどうかを出力します 有効であればあなたの言語で通用するもの あなたの言語で偽物は何もない どちらか 完全なプログラム 機能 14.12.2016より前に実装された機能のみを使用する テストケース ,, , ,,,,,, @@@### ~~~~~- @##@@# --> truthy @@@# ---- @@## ---- @### --> falsy (cause of cheese and width (You …

3
ゴルフ小数
あなたの目標は、入力分数に対して最短の一意の10進数シーケンスを出力するコードを記述することです。同じ分母を持つ2つの分数が同じ出力を持つことはありませんが、異なる分母を持つ分数が同じ表現を持つことは可能です。 入力として2つの整数を取ります。1つ目は分子、2つ目は分母です。 例えば: n d output ----- ------ 0 13: 0.00 1 13: 0.07 2 13: 0.1 3 13: 0.2 4 13: 0.30 5 13: 0.38 等 3/13で始まる13の分母を持つ唯一の分数である0.2ため、それ以上の数字は必要ありません。4/13そして、5/13で始まる、両方の0.3別の数字を区別するために必要とされるように、。 あなたの出力よりも-1より大きい数字と1未満のゼロの有無にかかわらずどちらか小数点の前に、長い出力が一貫している限り、すなわちかもしれない0.5と.5同じ数であり、両方とも有効です。他の先行ゼロは許可されません。出力を別の値と区別する必要がある場合は、後続ゼロを表示する必要があります。 数字をゼロから四捨五入することはできません。それらは切り捨てられなければなりません。先頭または末尾にスペースがあってはなりません。オプションで、単一の末尾の改行がある場合があります。 その他のテスト値: n d output ---------- ------ 0 1: 0 (this 0 may not be removed because there's no decimal point) …

6
ブリッジはASCIIアートのすべての比metaです
(タイトルについてジムウェストに謝罪し、ロゴのシスコのテキスト表現にランダムに触発されました: .:|:.:|:. コンセプトのため) 入力整数を指定する1 <= n <= 255とn、以下の構成規則に従って距離の吊り橋のASCIIアート表現を出力します。 橋の始点と終点(n距離には含まれません)は常に-|と|-であるため、橋はその隣の高速道路に適切に接続できます。 橋は下に伸びていません(-列で構成されている道路レベルは下の列です)。 道路部分--は最大で2つまで連続して配置できますが、それより長いスパンをサポートするにはサスペンションケーブルが必要です。 サスペンションケーブル\は、道路からタワー|まで直線で延びています。 タワー|は、隣接するサスペンションケーブルを支えるのに十分な高さでなければなりませんが、高くはなりません。 ブリッジは、可能な限り中央セクションを優先して、中間点を中心に左から右にバランスを取る必要があります。 上記のすべてがケーブルの最小化をもたらすはずですが、ただ明確にするために、上記の規則を引き続き守りながら、吊り下げケーブルの数を最小限にしなければなりません。 視覚的な表現を提供するために、期待される出力は次のとおりですn = 1, 2, 3, ... 15- 1 -|-|- 2 -|--|- 3 -|\-/|- 4 -|\--/|- 5 |\ /| -|-\-/-|- 6 |\ /| -|-\--/-|- 7 |\ /| | \ / | -|--\-/--|- 8 |\ /| | …

4
PPCGクロースがプレゼントを届けるのを手伝ってください!
PPCGクロースがプレゼントを届けるのを手伝う 概要 PPCGクラウスはプレゼントを届けるのが遅くなりました。最近は奇妙な小さな子供がたくさんいるからです。これにより、PPCG Clausがすべてのプレゼントを正しい場所に届けることがはるかに難しくなります。あなたの課題は、彼がプレゼントを正しく提供するのを助けることです。 複雑さ 彼が配達することになっている子供を表す大文字の名前のリストと数字で表されたプレゼントのリストを考えると、あなたはその子供たちにプレゼントを配布する方法を理解しなければなりません。もちろん、キャッチもあります。 子供たちが奇妙な仲間(最初のイニシャルはASCIIコード奇数)である場合、彼は奇妙な贈り物を望んでいます!彼が偶数である場合(最初のイニシャルはASCIIコードでも)、明らかに彼は偶数を与えられなければなりません!ただし、3で割り切れる子はいたずらで、いたずらな若者なので、PPCGクラウスは来年行動させるためにそれらを完全に無視しなければなりません。彼のルートを成功と見なすには、すべてのプレゼントを彼らに値するすべての子供に届けなければならず、一人の子供にあまりにも多くのプレゼントを与えてはなりません。子どもたちが仲間よりも3つ以上のプレゼントを受け取った場合、来年はいたずらな子どもになるリスクがあり、それは正しくありません!また、善良な子供が別の善良な子供が受け取らなかったときにプレゼントを受け取る場合、それはその子供を悪に変えることにもなります。 例 子供たちは次のとおりです。 Kids = ["Amy", "Betty", "Clyde", "Dave", "Francine"] = [A,B,C,D,F] = [65,66,67,68,70] ベティは人類の悩みの種であり、明らかに数字3が付いています。 エイミーとクライドは誕生以来変人であり、プレゼントさえも受け取りたくない。 デイブとフランシーヌは子供でも普通です。彼らはプレゼントさえも受け取るべきです! プレゼントは次のとおりです。 Presents = [1,2,3,4,5,6,7,8,9,10,11,12,13,14] 可能な出力は次のとおりです。 [ ['Amy',[1,3,5]], ['Betty',[]], ['Clyde',[7,9,11,13]], ['Dave',[2,4,6,8]], ['Francine',[10,12,14]] ] 例外シナリオ しかし、PPCG Clausが準備ができて喜んでいるからといって、PPCG Clausができるというわけではありません。以下は、PPCG Clausへの悪いニュースを次のメッセージで伝える必要がある例外シナリオのリストです。 PPCGmas is cancelled! 次のシナリオでは、クリスマスがキャンセルされます。 子供はいない。 [],[1,2,3] -まあ、彼らはデド。 良い子はいない。 ["Betty"],[1,2,3] -真剣に、ベティをねじ込みます。 …

3
Dobble / SpotItカードジェネレーター
前書き Dobble / SpotItは、最短時間でペアのカードに同じシンボルを見つけ、それを示し、次のペアに移動するカードゲームです。各カードには複数のシンボル(通常バージョンでは8)がありますが、各ペアのカード間で正確に1つのシンボルが共通しています。 ゲームの物理コピーの例: チャレンジ 単一のカードに一連の記号(単一のASCII文字)と記号の数を指定して、各カードの記号を含む出力リストカードを作成するプログラムを作成します。明らかに多くの同等の組み合わせがあります。プログラムは、指定された入力に対して最大量のカードを生成する組み合わせのいずれかを記述する必要があります。 それはコードゴルフですので、コードが短いほど良いです。 最も複雑なケースで、宇宙の熱死の前に計算が終了することも素晴らしいことです。 入力 function / stdinへの2つの引数(選択) それらの最初は、 'ABCDE'や['A'、 'B'、 'C​​'、 'D'、 'E']のようなシンボルのコレクションです-あなたが選択したフォーマット、文字列、セット、リスト、ストリーム、または選択した言語の慣用的なもの。文字は[A-Za-z0-9]のセットから与えられ、重複はありません(したがって、入力シンボルセットの最大サイズは62です)。これらは必ずしも順序付けられません( 6シンボルの場合にも「yX4i9A」を取得できます)。 2番目の引数は整数で、単一のカードのシンボルの量を示します。シンボルセットのサイズよりも<=になります。 出力 改行で区切られた複数の行を印刷します。各行には単一のカードのシンボルが含まれます。 例 ABC 2 >>>> AB BC AC または ABCDEFG 3 >>>> ABC BDE CEF BFG AEG CDG ADF または ABCDE 4 >>>> ABCD ヒント 作成されるカードの数は、個別のシンボルの量より多くすることはできません。多くの組み合わせでは、かなり小さくなります 問題の数学の側面で助けが必要な場合は、いくつかの数学の背景を読みたいかもしれません これは私の最初のコードゴルフチャレンジですので、フォーマット/スタイルに関する問題の可能性をご容赦ください-コメントで指摘した場合は、エラーを修正しようとします。

2
順列と一致します!
あなたの課題は、それ自体のすべての文字列の置換に一致する正規表現を作成することです。また、大文字と小文字を区別する必要があります。 したがって、たとえば、正規表現が次の場合: ABC これらの文字列と一致する必要があります(一致するだけです)。 ABC ACB BAC BCA CAB CBA 次のようなものと一致しないはずです。 AABC (contains an extra A) ABCD (contains an extra D) AC (no B) AAA (no B and C, extra 2 A's) abc (case-sensitive) ルール: 任意の種類の正規表現を使用できます。 標準の抜け穴が適用されます。 コードには少なくとも2つの異なる文字が必要です。つまり、次のようなソリューション1は無効です。 正規表現には、印刷可能なASCIIのみを含める必要があります。

9
すべてのゼノドローム
前書き ベースにxenodrome Nベースでその数字の全ての整数であり、nが異なっています。ここ xenodromesの一部OEIS配列です。 例えば、ベース16に、FACE、42およびFEDCBA9876543210いくつかのxenodromes(されている64206、66及び18364758544493064720基部10に)、しかし11とDEFACEDされません。 チャレンジ 入力ベースnを指定すると、ベース10のそのベースのすべてのゼノドロームが出力されます。 出力は、最小から最大の順にする必要があります。シーケンス内の用語がどこで終了し、新しい用語がどこから始まるかが明確である必要があります(例:[0, 1, 2]どこ012がそうでないかが明確です)。 nは0より大きい整数です。 明確化 このチャレンジは、整数とそのベースを文字列として処理することを避けるために、特にベース10でIOを実行します。課題は、ベースを抽象的に処理することです。そのため、この追加ルールを追加しています。 整数は、基数10以外の基数に文字列として保存できません。 言語の実装に時間、メモリ、精度、またはその他の技術的な制限がない場合、プログラムは理論的にかなり高いnを処理できる必要があります。 これはcode-golfであるため、バイト単位の最短プログラムが勝ちます。 入力と出力の例 1 # Input 0 # Output 2 0, 1, 2 3 0, 1, 2, 3, 5, 6, 7, 11, 15, 19, 21 4 0, 1, 2, 3, 4, 6, 7, 8, 9, 11, …

19
最短コナミコード
問題 実行時にコナミコードを入力すると、文字列「+30 lives」がれ、コンピューターのスピーカーから選択したノイズが聞こえるます。 定義 「コナミコード」は次のように定義されています UUDDLRLRBA、Enterキーを押すことでます。 ルール コードが矢印または文字と一致している限り、上矢印U、下矢印D、左矢印L、右矢印の使用を選択できますR。 入力はコントローラーまたはキーボードから受け入れられますが、両方をサポートする必要はありません。 既存の回答はのBABA代わりに引き続き使用できますがBA、必要に応じて短縮することもできます。BA一貫性のために、将来の回答はすべて使用する必要があります。 空の入力をサポートする必要はありません。

16
関係が推移的かどうかを判別
チャレンジの説明 いくつかの定義から始めましょう: 関係は、要素の順序対の集合である(この課題では、我々は整数を使用することがあります) たとえば[(1, 2), (5, 1), (-9, 12), (0, 0), (3, 2)]、関係です。 関係は、要素の任意の2つのペアに対して推移的と呼ばれ(a, b)、(b, c)この関係で、ペアが(a, c)また存在し、 [(1, 2), (2, 4), (6, 5), (1, 4)]それが含まれているため、推移的である(1, 2)と(2, 4)、しかし、(1, 4)同様に、 [(7, 8), (9, 10), (15, -5)]任意の二つのペアが存在しないため、推移的であり (a, b)、(c, d)本ようb=cです。 [(5, 9), (9, 54), (0, 0)]は推移的では(5, 9)あり(9, 54)ません。(5, 54) 整数のペアのリストを指定して、関係が推移的かどうかを判断します。 入出力 合理的な形式の整数のペアのリストが提供されます。関係を考える [(1, …

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