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

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

10
自然ログのアリ
これは良い初心者の挑戦であり、良い時間のキラーです。 タイトルが短すぎたため、自然対数だけを言いました。これは対数とは関係ありません。 与えられた2つの変数: アリの数n。 ログの幅w。 幅のログwをnアリで出力します(例はw=3、n=6) | | | \O/ \O/ \O/ | | -O- -O- -O- | | /o\ /o\ /o\ | | ^ ^ ^ | | | | \O/ \O/ \O/ | | -O- -O- -O- | | /o\ /o\ /o\ | | ^ ^ ^ | …

20
文字列を部分文字列で作成できるかどうかをテストしてください!
文字列sと配列/リストlを指定すると、sからの部分で作成できるかどうかを判断しlます。 たとえば、文字列が"Hello, world!"でリストがの[' world!', 'Hello,']場合、プログラム/関数は真の値を返す必要があります。これは、文字列を形成するようにリストを配置できるためです。次のリストも真偽値を返します['l', 'He', 'o, wor', 'd!']。'l'ひもの中の必要な場所を埋めることを想像してください。そのため、リストの要素を繰り返して文字列を形成できます。文字列を形成できない場合、偽の値を返す必要があります。IOの標準的な方法、標準的な抜け穴が適用されます。 テストケース: Input (In the form of s, l) Output (1 if possible, 0 if impossible) "Hello, world!", ["l", "He", "o, wor", "d!"] 1 "la lal al ", ["la", " l", "al "] 1 "this is a string", ["this should return falsy"] …

12
Diffyゲームは劣化していますか?
最近、Diffyゲームに関する質問を投稿しましたが、回答がありませんでした。結構です、質問は本当に難しいですが、Diffyゲームについて簡単な質問をして、ボールが転がるようにしたいと思います。 Diffyの仕組み Find Diffy Gamesからコピー Diffyゲームは次のように機能します。まず、負でない整数のリストから始めます。この例では、 3 4 5 8 次に、隣接する番号の絶対差を取ります (8) 3 4 5 8 5 1 1 3 その後、繰り返します。ループに入ったことに気付くまで繰り返します。そして、一般的にゲームは最初から再び始まります。 3 4 5 8 5 1 1 3 2 4 0 2 0 2 4 2 2 2 2 2 0 0 0 0 0 0 0 0 ほとんどのゲームは負け状態とみなされるすべてゼロの文字列で終了しますが、まれにいくつかのゲームが大きなループでスタックすることがあります。 …

30
他の要素の合計のパリティ
仕事 正の整数の配列を指定して、各要素を他の要素の合計のパリティで置き換えます。配列には、少なくとも 2つの要素があることが保証されています。 定義 パリティ:数値が奇数か偶数か。 例 配列の場合[1,2,3,1]: 置き換え1のパリティ付き2+3+1すなわち、even。 置き換え2のパリティ付き1+3+1すなわち、odd。 置き換え3のパリティ付き1+2+1すなわち、even。 置き換え1のパリティ付き1+2+3すなわち、even。 出力: [even, odd, even, even] 入力 正の整数の配列。 適切な配列、または正整数の改行で区切られた文字列として取得できます。 配列とその中の値は、言語の処理能力の範囲内であると想定できます。 出力 アレイ2つの一貫した値、1を表すodd、表す1 even。 2つの値を改行で区切った文字列として出力できます。 テストケース 入力: [1, 2, 3, 1] [1, 2, 3, 2, 1] [2, 2] [100, 1001] 出力: [even, odd, even, even] [even, odd, even, odd, even] [even, …

5
あなたの土地はどれくらい素晴らしいですか?
この課題では、土地の大きさを計算します。 構築した壁を考慮して、土地のサイズを計算するプログラムまたは関数を作成します。「上」、「下」、「左」、「右」の4つの方向を表す、選択した4つの異なる文字のセットを含む空でない入力文字列が与えられます(^ v < >このチャレンジで使用します)。180度回転(<>または^v)することはできませんが、壁を越えることができます。 土地を「キャプチャ」する方法は、土地を壁で囲むことです。壁自体もあなたの土地の一部とみなされます。いくつかの例を使用すると、より明確になります。私が使用しますo、壁に囲まれた土地のためにx壁自体のために、そしてS壁の開始点のために、ちょうど壁が構築されている方法を説明します。出力は、土地の合計サイズ(の数o、xおよびS以下のテストケース)である必要があります。 Input: >>>> Land: Sxxxx Output: 5 Input: <<<^^^>>>vv Land: xxxx xoox xoox xxxS Output: 16 Input: <<<^^^>>>v Land: xxxx x x x xxxS Output: 11 Input: < Land: xS Output: 2 Input: >>>>>>vvvvvvvvv<<<<<^^^^>>>>>>>>vvvvvvvvvv<<<<<<<<<<<<<<<^^^^^^^^^>>>vvvvvv<<<<< Land: Sxxxxxx x x x x xxxxxxxxx xxxx xoooox x xoox …

23
小数を取得します!
仕事: あなたの仕事は、3つの入力が与えられたときです: 分子 n 分母 d 別の整数、 x x小数点以下の数値のth桁を見つけるプログラム/関数を作成します。 仕様: nand の範囲は、dとの間に1あり2^31 - 1ます。 範囲は、x間にある1と10,000,000、包括的。 に1ベースのインデックス付けを使用するか、0ベースのインデックス付けを使用するかを選択できますx。どちらを使用しているのか答えてください。 nはより大きい場合がありdます。 n、dおよびx正の整数であることが保証されている(の1ベースのインデックスのバージョンのxためにあなたが使用することを選択した場合は、インデックスを0ベースx、その後x可能0)。 合理的な方法で入力を行うことができます(つまり、標準的な抜け穴ではない任意の方法)。 ルール: x丸められたときではなく、正確なth桁を返す必要があります。たとえば、の15th桁は1/6ではなく7、です6。 あなたのx言語が1000万桁までの小数をサポートしていない場合を除き、プログラムは1000万未満すべてで動作する必要があります。 I / Oの例: 入力例では0から始まるインデックスを使用xし0てい9,999,999ます。つまり、からになります。それに加えて、「入力」は、数字を区切るスペースを含む文字列として書き込まれます。 1 2 3: 0 5 6 0: 8 5 6 1: 3 1 6 15: 6 (not 7, as it's not rounded) 1 11 …
23 code-golf  math 

1
フィボナッチカーネルを見つける
あなたはおそらくフィボナッチ数を聞いたことがあるでしょう。彼らはかなり有名です。フィボナッチ数列の各数は、数列の最後の2つの合計で、最初の数と2番目の数は1です。数列は次のようになります。 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 17711 28657 46368 75025 121393 196418 317811 514229 832040 1346269 2178309 3524578 5702887 9227465 14930352 24157817 39088169 63245986 102334155 165580141 267914296 433494437 701408733 1134903170 1836311903 2971215073 4807526976 7778742049 …

2
チェス盤を脱出する
自分がチェス盤に乗っているのを見つけます。あなたは出口を見ることができますが、それはひどく遠くにあり、あなたはむしろずっと歩きたくないでしょう。幸いなことに、地元の人たちがあなたに乗車を申し出ています。騎士、ルーク、司教、王は皆あなたを目的地に連れて行きますが、これがチェス盤であることを見て、目的地に向かう途中でチェスのルールを順守しなければなりません。できるだけ早くここから出たいと思いますが、誰の申し出を受け入れますか? 仕事 任意の形状とサイズのチェス盤とチェス盤上の2つのポイントが与えられた場合、できるだけ少ない移動で2つの場所の間を移動できるチェスの駒を出力します。取締役会は必ずしも継続的ではなく、取締役会のセクション間にギャップがある可能性があることを意味します。4つのピース(キング、ルーク、ナイト、ビショップ)はそれぞれ、チェスの標準ルールに従って移動できます。クイーンとポーンの駒は、この挑戦​​から意図的に除外されています。 I / O 任意の合理的な形式で入力を受け付け、選択した任意の形式で出力することもできます。入力と出力は一貫したものでなければなりません。複数のピースが同じ移動数で目的地に到達できる場合、最短時間でそこに到達できるすべてのピースを出力する必要があります。4つの部分のいずれも最後まで到達できない場合、他のすべての可能な出力とは異なる限り、何でも出力できます。これには、何も出力しないか、エラーをスローすることが含まれます。 テストケース 正方形は開始点を示し、円は終了点を示します。 司教 騎士 キング ルーク キング、ナイト なし
23 code-golf  chess 

14
Hot Wheels車はどのくらいの速度ですか?
数年前、Hot Wheelsは「Formula Fuelers Racers」と呼ばれるシンプルなフラッシュゲームを作成しました。ゲームをプレイするには、冷蔵庫から3つの材料を選択して車に入れ、コンピューターのランダムに生成された車と競います。このゲームの仕組みは非常にシンプルであることがわかりました。まず最初に、あなたの車の実際のレース「時間」はランダムに生成され、あなたがレースに勝ったかどうかには関係ありません。第二に、レースの勝者は、選択された材料から計算されるスコアによって決定されます(重複した材料は許可され、順序が重要です)。各成分には、次の表に示すように、関連する「値」と関連する「操作」があります。 # ingredient val op 1 Hot Salsa 2 + 2 Root Beer 1 + 3 Milk 1 + 4 Pickle Juice 2 + 5 Mystery Lunch -3 * 6 BBQ Sauce 2 + 7 Egg 1 + 8 Ketchup 2 + 9 Mustard -1 * 10 …

7
カメラを回転させます。宇宙飛行士を救う
注:The Martianのマイナーネタバレはこの課題にあります。注意して先読みしてください 火星人は、火星に偶然立ち往生した宇宙飛行士であり植物学者でもある並外れたマーク・ワトニーについてのSF小説です。本のある時点で、マークはNASAと通信しようとしますが、彼らが持っている通信の唯一の手段はカメラです。マークはインデックスカードに書き込むことでメッセージを送信します。NASAはカメラを360度回転させることができるため、NASAはカメラを「はい」または「いいえ」とラベル付けして返信します。 NASAが送信できる唯一のデータはカメラが向いている方向であるため、Markはアルファベット文字のあるカードをポイントしてメッセージを入力できるシステムを考え出します。しかし、文字「az」を使用することは実用的ではありません。この本を引用するには(この回答から、scifi.seに): 30分ごとにyes / noの質問よりも速く話す必要があります。カメラは360度回転でき、アンテナパーツがたくさんあります。アルファベットを作る時間。しかし、文字AからZだけを使用することはできません。26文字と質問カードは、着陸機の周りの27枚のカードになります。それぞれがたった13度の円弧を取得します。JPLがカメラを完璧に向けたとしても、どの文字が意味するのかわからない可能性があります。 したがって、ASCIIを使用する必要があります。それがコンピューターがキャラクターを管理する方法です。各文字には0〜255の数値コードがあります。0〜255の値は2桁の16進数で表現できます。16進数のペアを渡すことで、数字や句読点など、好きな文字を送信できます。 ... そこで、0から9、およびAからFのカードを作成します。これにより、カメラの周りに16枚のカードと質問カードが配置されます。17枚のカードはそれぞれ21度以上を意味します。対処がはるかに簡単です。 NASAのトップソフトウェアエンジニアの1人としての今日の目標は、カメラのさまざまな角度をエンコードするプログラムを作成することです。マークが指し示す17枚のカードは次のとおりです(順番に)。 ?0123456789ABCDEF これらのカードはそれぞれ21度離れているため、カメラをから?に0回転するには、カメラを21度回転し、2to 1を-21度回転する必要があります。(それはないです正確に 21、私たちはそれをシンプルに保つために丸めます)soから行くために、このラップをFすることは3105度(5ターン、5 * 21 = 105)です。これは、カメラが遠くまで移動する必要がないため、-252よりも効率的です。 プログラムまたは関数が行う必要があることは次のとおりです。 入力として文字列を受け取ります。この文字列をsと呼びます。単純にするために、入力は印刷可能なASCIIのみになります。この例では、入力がSTATUS 各文字を16進表現に変換します。これはに変換さSTATUSれ53 54 41 54 55 53ます。 各カードを指し示して「質問カード」に戻るために、カメラが行う必要のある連続した学位の回転を印刷または返す。この例では、これは次のようになります。 6 * 21 = 126 (?-5) -2 * 21 = -42 (5-3) 2 * 21 = 42 (3-5) -1 * 21 = …

9
ヒルバーツグランドホテル
前書き ヒルベルトグランドホテルのことを聞いたことがある人もいるかもしれません。マネージャーは、ゲストが滞在している場所のリストを失いましたが、まだチェックインした順番を持っています。各ゲストは、値よりも小さい部屋番号の客室に滞在することはできません。部屋、空いているスペースのない上位の部屋のすべてのゲストと新しいゲストは1部屋上に移動します。各ゲストが滞在している場所を見つけるのを手伝ってもらえますか? 必要条件 入力として自然数の順序付きリストを受け取り、それらをインデックスに配置するプログラムを作成します。そのインデックスに既に値が存在する場合、リスト内の次のエントリまでシフトされます。このプロセスは、最初の空の(0または未定義の)スペースが見つかるまで繰り返されます。現在の最高のインデックスと新しい入力との間の未定義のスペースは、0を追加することによって埋められます。これはヒルベルトのグランドホテルであるため、現在最も高い占有インデックスよりも高い部屋は存在しません。 入出力 入力は、自然数の順序付きリストになります(入力の受け入れられた形式を介して読み取ることができます)入力の 各数字は、1人のゲストがホテルに到着したと見なされ、到着順になります 出力は、ゲストの最終配置(番号)になります 例 入力: 1 3 1 出力: 1 1 3 ステップバイステップ: 1 インデックス1に部屋を作成し、その中に 1を配置1 0 3 インデックス3までの部屋を作成し、部屋3に3を配置 1 1 1 3 部屋1の内容を上にシフト1つの部屋と部屋1に1を配置 入力: 1 4 3 1 2 1 出力:1つの1 2 1 3 4 ステップバイステップ: 1は それにインデックス1と場所1の部屋を作成します。 1 0 0 4が 部屋にインデックス4と場所4部屋までの作成4 1 …

1
それはすべての要因です!
このチャレンジは、この素晴らしいアニメーション図に触発されています(チャットで投稿してくれたflawrに感謝します)。 input nを指定すると、指定されたように、すべての素因数をドットのネストされた多角形として描画します。 たとえば、番号を指定する357 = 17x7x3と、三角形に3つのドット、七角形にそれらの三角形の7つのバージョン、17角形にそれらの七角形の17のバージョンを配置します。要するに、外側の最大の素因数から内側の最小の素因数に向かうネストされたポリゴン。の場合357、あなたの答えは次のようになります(色の有無にかかわらず): すべての素数のすべてのポリゴンを>= 3ダイアグラムの周りで回転させないでください。 唯一の例外は2、特に奇数のべき乗の素数です2。376 = 47x2x2x2以下の例でわかるように、8sは回転し、sの単一行ではなく、正方形内のsの2垂直スタックです4。2正方形に配置されたの累乗でさえ、この方法で回転させる必要はありません。 実際に448 = 7x2x2x2x2x2x2は、64sの七角形のように見えるダイアグラムがあり64、正方形の正方形の正方形に配置されていますが、回転はありません。 さらに二つの例がある440 = 11x5x2x2x2と432 = 3x3x3x2x2x2x2。私たちは、ことがわかり4402の奇数力で、回転した8ものの、秒432の偶数乗と2その回転しない16のを。 そして最後に、10 = 5x2Pythonとそのturtleモジュールでモックアップした色のない最小限の例を示します。 チャレンジ 入力を指定nすると1 <= n <= 10000、ネストされた因子ポリゴンの画像を出力します。 ルールは次のとおりです。 画像は、外側に(最大の素因数)辺を持つ多角形から、内側にある最小素数要素まで、ネストされたドットの多角形で構成されています。 係数2の場合、2の累乗は線、次に正方形、次に正方形の線などとして積み重ねられます。2のべき乗でも回転させないでください。2の奇数乗は、それぞれのポリゴンを中心に回転し、回転する前に垂直に積み重ねる必要があります。 好きなように画像の向きを変えることができます(私は好みですが)が、入れ子になったすべてのポリゴンは、2の奇数乗を除いて他のポリゴンと同じ方向を向いている必要があります。 画像サイズとドットサイズには2つのオプションがあります。 画像サイズは静的で、ドットサイズnはアニメーションのように増加するにつれて減少します。 ドットサイズは静的で、画像サイズはn増加するにつれて大きくなります。 ポリゴンの最初の3つのレイヤーは、隣接するポリゴンと区別可能(つまり、接触していない)である必要がありますが、の周囲の画像のサイズを考慮するとn=10000、レイヤーが接触し始めても問題ありません。彼らがそうしなかったなら、私はそれを好むでしょうが、Stack Exchangeにアップロード可能な画像に収まることは避けられないかもしれません。 色はオプションです。 ドットの形はあなた次第です。正方形が言語に適している場合は、それらを使用します。 ボーナスはありませんが、元の投稿のように誰かが図をアニメーション化して色付けするのを見てみたいです。 この質問の執筆に協力してくれたConor O'Brien、EasterlyIrk、Martin Ender、Kritixi Lithos、Mego、DJ McMayhem、El'endia Starmanに感謝します。 このコードはゴルフなので、最短のコードが勝ちます。幸運と良いゴルフ!

14
バブルラップシミュレーターを作成する
バブルラップは、最高レベルのエンターテイメントです。誰もがそれに同意することができます。 これで、コンピューターでもプチプチを楽しむことができます。 スペック 2つの整数wとhが与えられます(それぞれが幅と高さに反応します) プログラムは、各フェーズの間に1秒待機するすべてのw * hフェーズを出力し、終了する必要があります。 すべてのバブルラップは、すべてのセルがいっぱいになると始まります。 たとえば、4 * 6のバブルラップは次のように始まります。 O_O_ _O_O O_O_ _O_O O_O_ _O_O また、各フェーズでは、ランダムな非ポップセルがポップされます。たとえば、 O_O_ _O_O O_X_ _O_O O_O_ _O_O すべてのセルがポップされると、プログラムは終了します。別名。 X_X_ _X_X X_X_ _X_X X_X_ _X_X 例 (4,6) (5,5) (6,2) (10,10) (7,9)

2
ASCIIヒルベルト曲線
整数n出力を与えられ、文字とを使用したASCII nでのヒルベルト曲線の th番目の反復。_| 以下に、最初の4つの反復を示します。 n=1 _ | | n=2 _ _ | |_| | |_ _| _| |_ n=3 _ _ _ _ | |_| | | |_| | |_ _| |_ _| _| |_____| |_ | ___ ___ | |_| _| |_ |_| _ |_ _| _ | |___| …

13
オーバーフロー防止バッファ
バックグラウンド 最近のプログラマーは、バッファーをまっすぐに保つことができないようです!エラーの一般的な原因は、バッファに対して大きすぎる配列インデックスを使用しようとしていることです。あなたのタスクは、大きなインデックスがバッファが処理できるサイズまで縮小されるバッファを実装することです。誰にとっても最適なものを私が正確に決定するので、このバッファを私の正確な仕様に合わせて実装します。 概要 要素が追加されるとサイズが大きくなる挿入専用バッファがあります。バッファにはゼロのインデックスが付けられ、現在のサイズを法としてインデックスが付けられます。このチャレンジの特別なルールは次のとおりです。 インデックスiにアイテムを挿入するということは、jを計算し、リストのj番目のアイテムのj = i % buffer.length()後に新しいアイテムを挿入することを意味します。 唯一の特殊なケースは、ゼロを法とする算術演算が機能しないため、バッファが空の場合です。したがって、バッファが現在空の場合、新しいアイテムはインデックス0になります。 バッファにアイテムが1つしかない場合、常に0番目のアイテムの後に挿入します。これは一般的なケースの1つの例にすぎません。 バッファは6つの項目が含まれている場合:[4, 9, 14, 8, 5, 2]あなたは、新しい項目を挿入するように指示され10たインデックスに15、あなたはそれを見つけ15 % 6 == 3、その後、新しいを挿入し10た後8、インデックスで3の結果のバッファを与えます [4, 9, 14, 8, 10, 5, 2] 問題 正の整数の順序付きリストと、それらを挿入する正の整数インデックスを受け取る関数またはプログラムを作成します。 空のバッファから始め、指定された整数を対応するインデックスのバッファに追加します。 指定されたすべての挿入が行われた後、バッファー内にある整数の順序付きリストを出力します。 これはコードとゴルフの課題であるため、最短のコードが優先されます。 入力ガイドライン 必要に応じて入力リストを取得できます。例: ペアのリスト: [ [1,1], [2,4], [3,9], [4,16], [5,25]...] アイテムリストとインデックスリスト: [1, 2, 3, 4, 5...], [1, 4, …
23 code-golf 

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