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

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

21
木質の言葉、ちょっとした言葉
注:この質問には失礼な言葉がいくつかあります。 この古典的なモンティパイソンスケッチには、暗黙のパズルがあります(オンラインでスクリプトを準備することもできます)。 さまざまなフレーズは「ウッディ」または「ティンニー」と表現され、1つは「PVC」と表現されます。 フレーズを指定して、次のリストに従ってそのタイプで応答します。 woody: gone sausage seemly prodding vacuum bound vole caribou intercourse pert thighs botty erogenous zone ocelot wasp yowling tinny: litter bin newspaper antelope recidivist tit simpkins PVC: leap ルール 入力が上記のリストの1つに属している場合、出力はwoody、tinnyまたはPVCになります。 すべての入力は小文字です。 上記にリストされていないフレーズでは、どのような動作も許容されます。 答えの中で最も少ないバイトが勝ちます。

30
ブストロフェドニーゼ
関連するが、非常に異なる。 ブ-ストロフィ-ドンは執筆の他のすべての行が反転文字で、反転したり逆転されるテキストです。 このチャレンジでは、他のすべての行を逆にしますが、実際の文字はそのままにしておきます。1行おきであれば、反転する行を選択できます。 それぞれ0個以上の文字を含む印刷可能なASCIIの0個以上の行をサポートする限り、任意の適切な形式のテキストを使用できます。 例: ["Here are some lines","of text for you","to make a","boustrophedon"]: ["Here are some lines","uoy rof txet fo","to make a","nodehportsuob"] or ["senil emos era ereH","of text for you","a ekam ot","boustrophedon"] ["My boustrophedon"]: ["My boustrophedon"] or ["nodehportsuob yM"] []: [] ["Some text","","More text","","","Last bit of text"]: ["Some text","","More …

24
ドミノを描いて
チャレンジ 2桁の0-9を入力として、2つの面にこれらの数のピップ(ドット)を持つドミノ(ダブルナインドミノセットから)を出力します。10の可能な面は次のようになります(パイプで区切られています): | | o| o|o o|o o|o o o|o o o|o o o|o o o | o | | o | | o | | o |o o|o o o | |o |o |o o|o o|o o o|o o o|o o o|o o o または別の行に: ----- o ----- o …

24
プラスプライムとマイナスプライム
私たちのほとんどは知っています... すべての素数p>3は しかし、特定の範囲内のプラスプライム(6n+1)とマイナスプライム(6n-1)はいくつありますか? チャレンジ 整数を考えるとk>5、どのように多く数えprimes<=kているPlusPrimesと何があるMinusPrimes。 例 以下のためにk=100、私たちは持っている [5, 11, 17, 23, 29, 41, 47, 53, 59, 71, 83, 89] 12 MinusPrimes と [7, 13, 19, 31, 37, 43, 61, 67, 73, 79, 97] 11 PlusPrimesを 以下のためにk=149、私たちは持っている [5, 11, 17, 23, 29, 41, 47, 53, 59, 71, 83, 89, 101, 107, …

30
この文字列は腕立て側転をしている文字ですか?
私がどこかで見たチャレンジのインスピレーションはこれでした: 「修道女」という単語は、nが腕立て側転をしているだけです あなたの課題は、文字列を取得し、それが腕立て側転を行う最初の文字であるかどうかを判断することです。 ルール 文字列は、次の場合に車輪を動かす文字です。 最初の文字は最後の文字と同じです。(手紙は頭に着くことはできません。) 文字列は、1文字ごとにカートホイール文字を交互に使用します。 側転文字はnand u、mand w、band qです。ことを注意nしてwいる一緒にない文字をcartwheeling、そしてどちらもされているwとb。 標準の入力メソッドを使用して文字列を取得します。 文字列がカートホイール文字の場合は真偽値を出力し、そうでない場合は偽値を出力します。出力は、標準の出力方法を使用して実行できます。 追加のルール: 小文字の側転文字n/ u/ m/ w/ b/ のみをq処理する必要があります。 入力が空になることはないと想定できます。 1文字の文字列は有効なカートホイールではありません。 テストケース Input -> Output nun -> truthy nunun -> truthy nunununu -> falsy wmw -> truthy wmwun -> falsy bqbqbqbqbqb -> truthy v^v^v -> falsy AVAVA -> falsy …

30
#OctothorpeAsciiArt
アンシャープ、(とも呼ばれる番号記号、ハッシュまたはハッシュタグ、またはシャープ記号)は、以下のASCII文字は次のとおりです。 # それは楽しい形ではありませんか?それのより大きなバージョンを作ろう!だからここにあなたの挑戦があります: 正の整数Nを指定すると、サイズNの ASCIIハッシュタグが出力されます。 たとえば、サイズ1の ASCIIハッシュタグは次のようになります。 # # ##### # # ##### # # 各行の末尾の空白は許可されますが、必須ではありません。 入力は常に有効な正の整数であるため、非数値、負、または0を処理する必要はありません。出力は任意の適切な形式であるため、STDOUTに出力し、文字列のリストまたは文字列を返します。改行、文字の2Dマトリックス、ファイルへの書き込みなどはすべて問題ありません。 テストケース 2: ## ## ## ## ########## ########## ## ## ## ## ########## ########## ## ## ## ## 3: ### ### ### ### ### ### ############### ############### ############### ### ### ### ### ### …

17
いくつかの「enciph5r47g」をやろう
これは、「deciph4r4ng」を実行してみましょう。 このチャレンジでは、あなたの仕事は文字列を暗号化することです。幸いなことに、アルゴリズムは非常に単純です。左から右への読み取り、各典型的な書き込み文字(ASCIIの範囲32〜126)を数字N(0〜9)に置き換えて、文字N + 1と同じであることを示す必要がありますその前の位置。例外は、元の文字列の前の10桁以内に文字が表示されない場合です。その場合は、キャラクターをもう一度印刷するだけです。事実上、元のチャレンジの操作を元に戻すことができるはずです。 例 入力文字列"Programming"は次のようにエンコードされます。 したがって、予想される出力は"Prog2am0in6"です。 明確化と規則 入力文字列には、32〜126の範囲のASCII文字のみが含まれます。空になることはないと想定できます。 元の文字列には数字が含まれないことが保証されています。 文字がエンコードされると、次の数字で参照される場合があります。たとえば、"alpaca"としてエンコードする必要があります"alp2c1"。 参照は文字列をラップすることはありません。前の文字のみを参照できます。 完全なプログラムまたは関数を作成して、結果を出力または出力できます。 これはコードゴルフであるため、バイト単位の最短回答が優先されます。 標準的な抜け穴は禁止されています。 テストケース Input : abcd Output: abcd Input : aaaa Output: a000 Input : banana Output: ban111 Input : Hello World! Output: Hel0o W2r5d! Input : this is a test Output: this 222a19e52 Input : golfing …

11
私の本当の友達のためにゴルフをコーディングする
...そして私のコード友達のための本当のゴルフ。 これは、1年前のXKCDコミックに基づいたチャレンジで、ほとんどがトースト(コミックの最初のパロディ)から成り立っていますが、わずかなバリエーションがあります。 あなたの仕事は、friends(標準入力または関数引数を介して)入力としてコミックからトーストの前半(すべてを含む)を取得し、正確なテキストを出力(または返す)するプログラム(または関数)を書くことです後半。無効な入力を処理する必要はありません。標準の抜け穴が適用され、バイト単位の最短コードが優先されます。 例 他の場所からトーストをコピーしたくない人を助けるために、ここにすべてを入力と出力に分けて示します。 Input: Champagne for my real friends Output: and real pain for my sham friends! Input: Pseudopods for my real friends Output: and real pods for my pseudo-friends! Input: Petticoats for my real friends Output: and real coats for my petty friends. Input: Loosestrife for my …

26
超アクロスティックを作る
バックグラウンド この問題の解決策が説明されているDyalog APL 16.0のリリースを祝う{⊢⌺(≢⍵)⊢⍵} 仕事 奇数の長さ nの印刷可能なASCII文字列を指定すると、文字列を水平方向に中央揃え、垂直方向に中央揃えに複製し、各行と列に同じ文字列のアクロスティックを含むn × nの正方形を作成します。正方形のサイズn × nを維持するために、中央にある文字列以外はすべて切り取られることに注意してください。 コードの説明は大歓迎です。 ルール 末尾に空白と改行がある場合があります(これには右下の三角形が含まれます) 文字列のリストを返すことがあります 文字列を使用した例ABXCD: nは5です。最初に、1つの水平方向と1つの垂直方向の2つの中心の文字列を描画します。 ┌─────┐┐ │A│ │B│ │ABXCD│ │C│ │D│ └─────┘┘ (明確にするために5×5の境界ボックスが追加されました) 次に、可能なすべてのアクロスティックを水平および垂直に配置します。 A AB ┌─────┐┐ │ABX│CD │ABXC│D │ABXCD│ A│BXCD│ AB│XCD│ └─────┘┘ CD D 最後に、境界ボックス内にあるもののみを返します。 ABX ABXC ABXCD BXCD XCD テストケース World: Wor Worl World orld rld …
35 code-golf  string 

20
ある力を合計する
単純ですが、できればさほど簡単ではない挑戦: k数値を分割する累乗を加算するプログラムまたは関数を作成しnます。すなわち: 入力:2つの正の整数nおよびk(または整数の順序ペアなど) 出力:の正の約数の総和nことがあるk整数の乗 たとえば、11!= 39916800には、キューブである6つの除数、つまり1、8、27、64、216、および1728があります。したがって、入力39916800およびが与えられると3、プログラムはそれらの合計を返し2044ます。 その他のテストケース: {40320, 1} -> 159120 {40320, 2} -> 850 {40320, 3} -> 73 {40320, 4} -> 17 {40320, 5} -> 33 {40320, 6} -> 65 {40320, 7} -> 129 {40320, 8} -> 1 {46656, 1} -> 138811 {46656, 2} -> 69700 {46656, 3} -> …

15
11 =(1 + 2 + 3 + 4 + 5)-(1 + 2 + 3)+(6)-(4)
正の整数Nを指定すると、次のアルゴリズムがNに到達するために必要なステップ数を返すことがタスクになります。 最小の三角数の検索T iのようにT I ≥Nを。対応するリストL = [1、2、...、i]を作成します。 Lの項の合計がNより大きい間、リストから最初の項を削除します。 Lの項の合計がNより小さい場合、iをインクリメントしてリストに追加します。ステップ2に進みます。 Nに到達するとすぐに停止します。最初のステップのみが体系的に実行されます。ステップ2と3はまったく処理されない場合があります。 例 以下はN = 11の例です。 したがって、N = 11の期待される出力は4ですです。 他の例: N = 5 - T 3 = 1 + 2 + 3 = 6で始まり、 2 + 3 = 5が続きます。期待される出力: 2。 N = 10 -ためだけ最初のステップが必要とされる 10は三角数である: T 4 = 1 + 2 + …

30
効率的なカウント
私が子供だったとき、私の貯金でドル札を数えたいとき、私は大声で数えたでしょう 1、2、3、4、5、6、7、8、9、10。 11、12、13、14、15、16、17、18、19、20。 21、22、23、24、25 ... 最終的に、これらの複数音節の数字の発音にうんざりしました。数学的に気にかけて、より効率的なカウント方法を作成しました。 1、2、3、4、5、6、7、8、9、10。 1、2、3、4、5、6、7、8、9、20; 1、2、3、4、5、6、7、8、9、30 ... ご覧のとおり、前の番号から変更された数字のみを発音します。これには、数字の英語名よりもはるかに反復性が高いという利点があり、計算に必要な頭脳が少なくてすみます。 チャレンジ 正の整数を取り、それをカウントする方法を出力/返すプログラム/関数を作成します。つまり、右端のゼロ以外の数字とすべての後続ゼロです。 例 1 1 2 2 10 10 11 1 29 9 30 30 99 9 100 100 119 9 120 20 200 200 409 9 1020 20 テストケースの完全なリストは必要ないはずです。これは、OEIS上のA274206です。 ルール エントリは、精度とメモリの問題を無視して、理論的にはすべての正の整数で機能する必要があります。 入力と出力は10進数でなければなりません。 入力または出力を数値、文字列、または数字の配列として選択できます。 入力は正の整数であることが保証されています。エントリは無効な入力に対して何でもできます。 これはcode-golfであるため、バイト単位の最短コードが優先されます。
35 code-golf  number 

4
FOIL Pythonの強力な型付け!
あなたのタスクは、Python 2または3で次のような式を作成することです。 (a+b)(c+d) == a*c + b*c + a*d + b*d True例外を発生させることなく評価されます。 明確にするために、コードをファイルにコピーしてから、ファイルにコピーfromしますimport *。次に、コンソールに式を入力し、それがであることを確認しTrueます。 これはコードゴルフなので、最短の長さ(バイト単位)の答えが優先されます。
35 code-golf  python 

30
どれくらい書く必要がありますか?
数字を書くことは、プログラミングのHelloの世界の1つであり、多くの場合1〜10です。 たくさんの数字を書きたい!多く、多くの数字。しかし、いくつの数字を書く必要がありますか? 仕事 整数の入力が与えられた場合、0から入力までの範囲のすべての整数を含む文字列に含まれる桁数を出力する数値を出力として指定します。否定識別子( "-")は単一の文字としてカウントされます。 I / Oの例 入力:8 書き込み:0,1,2,3,4,5,6,7,8 出力:9 入力:101 書き出し:0,1,2,3 ....、99,100,101 出力:196 入力:102 書き出し:0,1,2,3 ....、100,101,102 出力:199 入力-10 書き込み済み:0、-1、-2、-3、-4、-5、-6、-7、-8、-9、-10 出力:22 これはコードゴルフです。最も少ないバイト数が勝ちです!

30
ボールの弧を描く
投げられたボールの放物線の軌跡を描きます。 入力は、ボールの初期上昇速度、正の整数vです。1秒ごとに、ボールは1スペースを右に移動しv、垂直にスペースを空けvて1から、重力によりによって減少します。したがって、上昇速度は最終的にからvまで0下降し-v、最終的に初期の高さに戻ります。 ボールの位置は放物線を描きます。水平位置でx、その高さはy=x*(2*v+1-x)/2で(0,0)、ボールの初期位置は左下にあります。 ボールの軌跡のASCIIアートを、Oそれが占める座標上のを使用して出力します。出力は、時間の経過に伴うパスのアニメーションではなく、単一の複数行のテキストである必要があります。 出力には、先頭の改行がなく、最大で1つの末尾の改行が必要です。一番下の行は、画面の左端と同じ高さである必要があります。つまり、余分な先行スペースはありません。末尾のスペースはOKです。出力線幅が出力ターミナルに収まると仮定することができます。 v = 1 OO O O v = 2 OO O O O O v = 3 OO O O O O O O v = 4 OO O O O O O O O O v = 10 OO O O O O O …

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