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

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

30
超越的な数のゴルフ
定義 代数的数とは、整数係数を持つ非ゼロ多項式のゼロである数です。たとえば、の平方根2はのゼロであるため、代数的ですx^2 - 2。 超越数は代数ではない実数です。 仕事 超越番号を選択する必要があります。 その後、正の整数取るプログラム/機能書くnと出力をn番目の小数選択した超越数の小数点以下の桁を。提出する際には、どの超越番号が使用されているかを明記してください。 0インデックスまたは1インデックスを使用できます。 例 e^2=7.389056098...超越数です。この番号の場合: n output 1 3 2 8 3 9 4 0 5 5 6 6 7 0 8 9 9 8 ... イニシャル7は無視されることに注意してください。 上記で述べたように、他の超越番号を選択できます。 得点 これはcode-golfです。バイト単位の最低スコアが勝ちです。
46 code-golf  math  number 

12
数字をフランス語に翻訳する
フランス人は独特の方法で数字を綴ります。 1-16は「正常」です 17〜19は10 + 7と表記されます。10 + 8、10 + 9。 20-69は「正常」です(OK、OK!それほどではありませんが、このチャレンジに参加しています) 70-79は60 + 10、60 + 11 ... 60 + 10 + 7、60 + 10 + 8、60 + 10 + 9です。 80-99は4 * 20、4 * 20 + 1、4 * 20 + 2 ... 4 * 20 + 16、4 * 20 + 10 …

23
選挙をハックする
あなたはプロのハッカーであり、あなたの上司は候補者が次の選挙に勝つのを手伝うようにあなたに命じたところです。あなたの仕事は、投票マシンのデータを変更して候補者の結果を高めることです。 投票マシンは、投票結果を2つの整数として保存します。候補者v1の投票数()と相手の投票数(v2)です。 数週間の調査の後、システムにセキュリティホールが見つかりました。v1整数xでの値を増やしv2、同じでの値を減らすことができますx。ただし、制約があり、セキュリティハッシュコードを一定に保つ必要があります。 セキュリティハッシュコード: (v1 + v2*2) modulo 7 また、x変更に気付かないように、の値は最小限でなければなりません。 あなたのプログラムは、入力として受け入れるべきv1とv2。xso の最適値を出力する必要がありますv1>v2。 結果をハッキングできない場合があります。それらを処理する必要はありません(これは上司に問題を引き起こす可能性がありますが、それは別の話です)。 テストケース 100,123 --> 14 47,23 --> 0 40,80 --> 21 62,62 --> 7 1134,2145 --> 511

27
除数スカイライン
正の整数の場合k、d(k)の約数の数を示しkます。例えば、d(6)ある4ので、6有する4(即ち除数を1、2、3、6)。 正の整数で与えられN、水平位置に「建物」の高さは、このようなことは確定文字、使用ASCII分野で「スカイライン」を表示kであるd(k)ためにk = 1, ..., N。以下のテストケースを参照してください。 ルール #テストケースに示されているように、空白文字以外の文字を常に使用できます。 アルゴリズムは、理論的には任意の高さで機能するはずNです。実際には、プログラムが時間、メモリ、データ型サイズ、または画面サイズによって制限されている場合は許容できます。 水平方向または垂直方向の先頭または末尾のスペースまたは改行が許可されます。 どんな合理的な手段でも入出力を取ることができます。 すべてのプログラミング言語で、プログラムまたは機能が許可されます。標準的な抜け穴は禁止されています。 バイト単位の最短コードが優先されます。 テストケース N = 10: # # # # # ### ######### ########## N = 50: # # # # # # # # # # # # # # # # # # # # # # …

30
ターミナルでテキストをアニメートする
ターミナルでテキストをアニメートする 目標 目標は、出力内の文字列「Hello world」を「アニメーション化」して、各文字が互いに大文字になるようにすることです。 プログラムは、各文字が大文字になった後に終了できます。 例えば; # Iteration 1 Hello world # Iteration 2 hEllo world # Iteration 3 heLlo world # Iteration 4 helLo world # Iteration 5 hellO world # Iteration 6 (note: it should capitilize the space char (ie: a break between iteration 5 and iteration 7) …


16
テキストの対角線を描く
単語リストの入力が与えられた場合、文字を斜めに配置して単語を出力します。 p r o p g u r z a a z m n l m d e i c s n o g d g e o l f (上記は入力の出力になりますprogramming puzzles and code golf。) 正確には、各単語は前の単語の最初の列と3行下から始まり、連続する各文字は1列右に1行下に移動します。 入力は、1つのスペースで区切られた単語の単一の文字列、または単語のリスト/配列として提供されます。単語は小文字ののみで構成され、a-z常に少なくとも1文字の長さになります。 出力は、単一の文字列、行の配列、または文字の配列の配列です。単一の末尾の改行を除いて、先頭または末尾の空白は許可されません。 さらなるテストケース: a bcd efgh i j a b c d e f …
46 code-golf  string 

19
パックマンはこの糸を食べることができますか?
ゲームのアーケード版では、パックマンはパックドットを食べます。しかし、この課題では、彼は文字列の英数字と句読点に飢えています。 あなたの仕事は、パックマンに文字列を送り、食べられるかどうかを評価し、パックマンの位置を含む文字列を返す関数を作成することです。 パックマン(<)はキャラクターを左から右に食べ、行くたびに各キャラクターにアンダースコアまたはスペースを残し、彼の目標は最初の位置-1から最後の位置+1に到達することです: 1. <Pac 2. _<ac 3. __<c 4. ___< ただし、パックマンの天敵であるゴーストは、「GHOST」という単語の文字の1つ(大文字と小文字を区別しない)に遭遇すると、彼を停止します。関数は、Pac-Manがghost文字を検出すると、その位置を含む文字列を返す必要があります。 1. <No! 2. _<o! 幽霊を打ち負かすことができるのはパワーペレットだけです。パックマンが幽霊に来る前に「PELLET」(大文字と小文字を区別しない)という単語の文字に到達すると、幽霊を食べて動き続け、そのペレットは使い果たされます。パワーペレットは積み重ねることができます(つまり、ppgg両方のゴーストで食べられます)。Tのそれは(のような、任意の他の文字として扱われ、無視できるような文字は、ゴーストとペレットの両方として存在しますa)。 1. <Pop 2. _<op 3. __<p 4. ___< さらに明確にするために、「パックマンがここで負ける」という文字列では、次の操作が発生します。 P <P, +1 Pellet (1 pellet) a <a c <c - <- M <M a <a n <n <[space] l <l, +1 Pellet (2 …

30
今、私は私のABCを知っています、あなたは私と一緒にゴルフに来ませんか?
この大文字と小文字を区別しない正確なテキストを出力するプログラムまたは関数を作成します。 A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z. (多くのアメリカの子供がアルファベットを暗記するのを学ぶことを学ぶアルファベットの歌に基づいていますが、より圧縮性のために編集されました。) 出力は上記とまったく同じに見える必要がありますが(大文字と小文字は区別されません)、各行の末尾のスペースや末尾の改行が含まれる場合があります。最後の期間に注意してください。 これはコードゴルフなので、バイト単位の最短コードが優先されます。

16
ドットを回転させる
はじめに 2×nブール行列は、4文字の文字列として表すことができます. ':。文字列には「上行」と「下行」があり、1を表すドットと0を表す空のスペースがあります。たとえば、2×6行列 1 0 1 0 0 1 0 0 0 1 0 1 として表すことができます' '. :。あなたの仕事は、この「圧縮された形式」のマトリックスを取り、そのエントリーをコンベヤーベルトのように時計回りに1ステップ回転させることです。 入力 あなたの入力は文字の上の単一の文字列. ':です。その長さは少なくとも2であることが保証されています。 出力 出力は入力文字列になりますが、すべてのドットは時計回りに1ステップ回転します。より明確に言えば、一番上の行のドットは、右に1つずつ配置されていますが、一番右のドットは下に移動します。下の行のドットは左に1ステップ移動しますが、左端のドットは上に移動します。特に、出力文字列は元の文字列と同じ長さでなければならず、空白は重要です。 例 :..:'.2×6行列に対応する入力文字列を考えます 1 0 0 1 1 0 1 1 1 1 0 1 この行列の回転バージョンは 1 1 0 0 1 1 1 1 1 0 1 0 …
46 code-golf  string 

23
ターミナルの海
バックグラウンド 北半球の夏は終わりました。多くの人は太陽、ビーチ、海の波を逃します。 挑戦 ここに海があります: ** ** ** ** ** **** **** **** **** **** ***** ***** ***** ***** ***** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ****** ****** ****** ****** **** 海はこの波パターンの5倍でできています。 ** **** ***** ** …

15
ワイヤーで跳ねる電子
nスペースがある「ワイヤー」を想像してください。さらに、そのワイヤに「電子」があると想像してください。これらの電子は1単位の時間だけ生きます。正確に1つの電子に隣接するワイヤ内のスペースはすべて電子になります。Game of Lifeの用語では、これはB1/Sです。 たとえば、これは長さ10、期間62のワイヤです。 ルール 入力、nは、単一の正の整数です。 出力は、長さnのワイヤの周期を示す単一の整数でなければなりません。 開始状態は、ワイヤの一端にある単一の電子です。 期間には必ずしも開始状態が含まれるわけではありません。一部の長さは開始状態に戻ることはありませんが、それらはすべて周期的です。 静的ワイヤ(つまり、電子のないワイヤ)の周期は1です。 境界条件は周期的ではありません。つまり、ワイヤはトロイダルではありません。 テストケース このリストを作成してくれたorlpに感謝します。(n = 27まで検証しました。) 1 1 2 2 3 1 4 6 5 4 6 14 7 1 8 14 9 12 10 62 11 8 12 126 13 28 14 30 15 1 16 30 17 28 18 …

3
コンビネーションバイクロック
シナリオ 長い一日の仕事でオフィスで時間を過ごし、stackexchange.comを閲覧した後、私はようやく16:58にドアを出ました。私はまだインターンであるため、現在の交通手段は自転車です。信頼できるプジョーレイノルズ501に向かいますが、航海する前にロックを解除する必要があります。ロックは、フレームと前輪を通る標準の4桁のコンビネーションロック(0〜9)です。目を覚まそうとするとき、手を組んで組み合わせに入る。 挑戦 私の指はとても疲れているので、最小限の動きで正しい組み合わせにロックを回したいと思います。1つの動きは、1つの位置(36度)による回転として定義されます。たとえば、から5737への1つの動きがあり5738ます。ただし、連続する3つのリングを同時に把握し、1つとして回転させることができます。これは、1つの動きとしてカウントされます。たとえば、からまたはへの移動は1つだけです。桁番号1、2、および4は桁番号3とは無関係に同じ方向に移動したため、からに移動することは1つの動きではありません。57376837562657376838 したがって、特定の組み合わせについては、自転車のロック(4桁の整数)で見ることができ、ロックを解除するためにできる最小の動きは何ですか、そして、はい、いつでもどちらの方向にも回転できます。これにより、ある方向にいくつかの数字を、別の方向に他の数字を回せることを意味します。ロックを解除するたびに、すべての動きが反時計回りまたは時計回りになるわけではありません。 私は怠け者なので、ロック解除コードは0000です。 これはコードゴルフです。多くのコードを書くのは面倒なので、バイト数の最も短いプログラムが勝ちます。 入力は標準入力からであり、コードは、各移動後に各ステップで表示できる組み合わせを出力する必要があります(末尾の0000を含む)。各組み合わせの出力は、スペース/改行/コンマ/ピリオド/アンパサンドで区切る必要があります。 例 Input: 1210 0100 0000 Input: 9871 9870 0980 0090 0000 Input: 5555 4445&3335&2225&1115&0005&0006&0007&0008&0009&0000 Input: 1234 0124 0013 0002 0001 0000 私はこれをhttp://bicycles.stackexchange.comに投稿しようとしましたが、彼らはそれを好きではありませんでした... 免責事項:最初のゴルフですので、壊れている情報や不足している情報はお知らせください!また、すべての例を手作業で行ったので、動きが少ないソリューションがあるかもしれません! 編集:等しい数の動き(実際にはすべて)を持つ複数のソリューションパスがある回答の場合、推奨されるソリューションはありません。

26
OOo CODEを翻訳
oOo CODEで記述されたプログラムの入力が与えられると、それが表すBFコードを出力します。 oOo CODEの仕組みの簡単な説明を次に示します。 最初に、アルファベット以外の文字がすべて削除されます(範囲外のすべて A-Za-z)。 たとえば、プログラムを使用しますPROgRam reVERsES giVeN iNPut sEqUENcE(esolangs wikiページに記載されている、期待どおりの動作をする例)。この最初のステップの後、次のようになりました PROgRamreVERsESgiVeNiNPutsEqUENcE。 次に、残りのすべての文字を3つのグループに分割します PRO,gRa,mre,VER,sES,giV,eNi,NPu,tsE,qUE,NcE。1文字または2文字の末尾グループがある場合、それを破棄します。 次の表に基づいて、3文字の各グループをBFコマンドに変換します。 ooo > ooO < oOo [ oOO ] Ooo - OoO + OOo . OOO , つまり、グループの最初の文字が小文字、2番目が大文字、3番目が小文字の場合、コマンドに変換され [ます。 この例では、これが最終的にBFプログラムになり、,[>,]<[.<]+実際に入力が逆になります。 これはcode-golfであるため、バイト単位の最短コードが優先されます。 テストケース: <empty string> -> <empty string> A -> <empty string> Ab -> <empty string> …

10
文字列のジグザギフィ
印刷可能なASCII文字の空でない文字列を取り込むプログラム(または関数)を作成します。 文字列内の文字のジグザグチェーンを隣接するすべての文字ペアで印刷(またはリターン)します。 /通常のASCII順で最初の文字が2番目の文字の前にある場合。例えば B / A \最初の文字が通常のASCII順序で2番目の文字の後にある場合。例えば B \ A -最初の文字と2番目の文字が同じ場合。例えば A-A だから、のための出力Programming Puzzles & Code Golfになります o / \ r z-z o e G l / \ / \ / \ / \ / \ P o r m-m n u l s & C d f \ / …
46 code-golf  string 

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