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

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

30
繰り返した!階乗!
階乗の検索と混同しないでください! 前書き 整数の階乗はnnで計算できます != N × (N - 1 )× (N - 2 )× (。。。)× 2 × 1n!=n×(n−1)×(n−2)×(...)×2×1n!=n×(n−1)×(n−2)×(...)×2×1n!=n\times(n-1)\times(n-2)\times(...)\times2\times1 これは比較的簡単で、新しいことは何もありません。ただし、階乗は、n !のように二重階乗に 拡張できます。!= N × (N - 2 )× (N - 4 )× (。。。)× 4 × 2 偶数のため、及び N !!= N × (N - 2 )× (N - 4 )× (。。n!!=n×(n−2)×(n−4)×(...)×4×2n!!=n×(n−2)×(n−4)×(...)×4×2n!!=n\times(n-2)\times(n-4)\times(...)\times4\times2n!!=n×(n−2)×(n−4)×(...)×3×1n!!=n×(n−2)×(n−4)×(...)×3×1n!!=n\times(n-2)\times(n-4)\times(...)\times3\times1 奇数の場合。しかし、二重階乗に限定されません。たとえば、 …

11
いくつのページを削除しましたか?
先月、私は図書館からたくさんの本を借りました。それらはすべて、感情と陰謀を満載した良い本でした。残念ながら、ある時点で私は非常に怒り/悲しみ/失望したので、いくつかのページを引き裂きました。 今、図書館は私が各本で何ページを切り取ったかを知りたがっている。 あなたの目標は、ソートされたコンマ区切りの数字のリストを入力として取り、取り除いた可能性のある最小および最大のページ数を出力するプログラムを書くことです。各行は本を表し、各番号は本の欠落ページを表します。 入力例: 7,8,100,101,222,223 2,3,88,89,90,103,177 2,3,6,7,10,11 1 1,2 出力例: 4/5 5/6 3/6 1/1 1/2 4/5つまり、本のページ番号がどちら側から始まるかに応じて、4ページまたは5ページを切り取った可能性があります。6/7ページ、8/9ページ、100/101ページ、222/223ページ(4ページ)を切り捨てた可能性があります。あるいは、ページ7/8、ページ99/100、ページ101/102、ページ221/222、およびページ223/224(5ページ)を切り取ることができます。 本のページには常に表面と裏面があることに注意してください。また、ページ番号は本ごとに異なります。一部の書籍では、左側のページに偶数のページ番号があります。一部は右側のページにあります。すべての本は左から右に読みます。 バイト単位の最短コードが勝ちます。厳密なI / O形式は必要ありません。プログラムは、入力として1つ以上の本を取得できる必要があります。楽しむ。
34 code-golf 

20
アルファベットキャノン
キャノンボールが発射されるため、飛行の最初の瞬きでは、ツリートップで上昇しN、2回目の瞬きでは、ツリートップで上昇しN-1、軌道の最高点に到達します。その後、瞬きごとに1、2などの梢で落ち始め、地面に落ちます。同時に、砲弾は1つのツリートップ/瞬きの一定速度で水平方向に移動します。 あなたの仕事は、英語のアルファベットから連続した文字で軌跡を描くことです。文字が足りなくなった場合は、からやり直してください'A'。関数またはプログラムを作成します。入力は整数N(1≤N≤15)です。出力は、改行で区切られた文字列または文字列のリストなど、適切な形式の文字マトリックスにすることができます。文字はすべて小文字でもすべて大文字でもかまいません。余分な先頭と末尾のスペースが許可されます。標準的な抜け穴は禁止されています。コードは短いほど良いです。 in: 5 out: OP N Q M R L S K T J U I V H W G X F Y E Z D A C B B C A D in: 1 out: AB

21
掛けやすい数字
あなたの仕事は2つの数字を掛けるのが簡単かどうかを決定することです。これは、10を超える長い乗算では、乗算値と加算ステップの両方を見て、場所の値間でのキャリング(再グループ化)がないことを意味します。これは、乗算される各桁のペアが9以下で、各列の合計が9以下である場合に発生します。 例えば、331および1021乗算に簡単です: 331 x 1021 ------ + 331 662 0 331 ------ 337951 また、他の順序で乗算する場合も同じです(常にそうです)。 1021 x 331 ------ + 1021 3063 3063 ------ 337951 しかし、乗算は簡単431で1021はなく、示されている列間でキャリーが発生します。 431 x 1021 ------ + 431 862 0 431 ------ 440051 ^^^ また、加算ステップでキャリーが発生しなくても、get に乗算するとキャリーオーバーが発生するため、乗算は簡単12で16はありません。12 * 672 12 x 16 ---- + 72 12 ---- 192 …

30
Magic 8 Ballを作成する
子供の頃、私の友人はマジック8ボールを持っていて、質問をして、その質問の運命を確認しました。 チャレンジ あなたの課題は、実行(または呼び出し)時に、以下の可能な回答からランダムな回答を出力(または返す)するプログラム(または関数)を作成することです。(ランダムであること。each output should have a nonzero chance of occurring but they do not need to meet any other criteria) マジック8ボールからの可能な回答は(大文字と小文字を区別しません): It is certain It is decidedly so Without a doubt Yes definitely You may rely on it As I see it, yes Most likely Outlook good Yep Signs …

30
コードゴルフ:あなた自身のペットASCIIヘビ
それで、私は自分でコンソールに蛇を印刷するワンライナーを書きました。ちょっと面白くて、どうすればコードを圧縮できるのだろうと思いました... 以下に(短い)出力例を示します。 + + + + + + + + + + + + + + + + + + + + 仕様は次のとおりです。 各行では、単一の非空白文字(好きな方)がコンソールに出力されます。最初は、その左側に29〜31個のスペースが埋め込まれます。 各反復で、これら3つのアクション間でランダムな決定が行われます パディングの量は1ずつ減少します パディングの量は同じままです パディングの量は1ずつ増加します これを30回実行して、30セグメント長の蛇をコンソールに出力します。 バイト単位の最短回答が優先されます。

22
文字列を爆発させる
任意の文字列を指定して、テキストが各対角線に沿って上下に移動する三角形の形式で印刷します。たとえば、の入力は次"Hello World"を出力する必要があります。 d l r d o l W r d o l o W r d l o l l o W r d e l o l H l o W r d e l o l l o W r d l o l o W r …

18
26人の歌手、26通の手紙
RollingStoneによると、以下は史上最高の26人の歌手です。 Aretha Franklin Al Green Ray Charles Robert Plant Elvis Presley Mick Jagger Sam Cooke Tina Turner John Lennon Freddie Mercury Marvin Gaye Bob Marley Bob Dylan Smokey Robinson Otis Redding Johnny Cash Stevie Wonder Etta James James Brown David Bowie Paul McCartney Van Morrison Little Richard Michael Jackson Roy …

17
蛇を巻いてくれ!
入力整数与えられn、ある数の蛇を描画測定グリッドn x n番号からなる1を通じてn^2以下の様式で互いに巻回されています。 入力n = 3: 7 8 9 6 1 2 5 4 3 入力n = 4: 7 8 9 10 6 1 2 11 5 4 3 12 16 15 14 13 入力n = 5: 21 22 23 24 25 20 7 8 9 10 19 6 1 …
34 code-golf 

30
整数行列の決定要因
入力として正方整数行列を指定し、行列の行列式を出力します。 ルール マトリックス内のすべての要素、マトリックスの行列式、およびマトリックス内の要素の総数は、言語の表現可能な整数の範囲内にあると想定できます。 0の小数部を持つ10進数/浮動小数点値の出力が許可されます(例:の42.0代わりに42)。 ビルトインは許可されますが、ビルトインを使用しないソリューションを含めることをお勧めします。 テストケース [[42]] -> 42 [[2, 3], [1, 4]] -> 5 [[1, 2, 3], [4, 5, 6], [7, 8, 9]] -> 0 [[13, 17, 24], [19, 1, 3], [-5, 4, 0]] -> 1533 [[372, -152, 244], [-97, -191, 185], [-53, -397, -126]] -> 46548380 [[100, -200, …

30
番号の範囲を元に戻す
それが非常に簡単です、数与えられn、範囲を作成0しますn-1。実際、多くの言語がこの操作を組み込みとして提供しています。 次のCJamプログラムは整数を読み取り、そのような範囲を出力します(オンラインで試してみてください!): ri, セパレータなしで数値が出力されることに注意してください。 チャレンジ あなたの仕事は、このプロセスを逆にすることです。範囲を表す文字列を指定すると、その範囲を生成するために使用される数値を返すプログラムを作成する必要があります。 仕様書 番号は区切り文字なしで指定されます。 文字列が有効な範囲を形成すると仮定できます。 範囲に0または1ベースのインデックスを使用できます。 正しい出力が32,767を超えることはないと想定できます(したがって、有効な入力の長さが152,725を超えることはありません)。 正しい出力は常に正であると仮定することができます(したがって、0または負を処理する必要はありません)。 これはcode-golfであるため、最短の競合する回答(バイト単位)が勝ちます。 テストケース 0インデックス付き: 0123 -> 4 0 -> 1 0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 -> 101 1インデックス付き: 1234 -> 4 1 -> 1 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 -> 100

30
逆配列合計
プログラムは、入力として配列を取る必要があります。 配列: 常に1次元になります 整数のみが含まれます 空にすることができます プログラムは配列を逆にしてから、元の要素に要素を追加する必要があります。例: 入力: [1, 2, 3] 元の: [1, 2, 3] 逆に: [3, 2, 1] [1, 2, 3] + + + [3, 2, 1] [1+3, 2+2, 3+1] 出力: [4, 4, 4] テストケース: #In #Out [8, 92], [100, 100] [1, 2, 3], [4, 4, 4] [5, 24, 85, …

22
街を作って
コーダーは常に配列を退屈な1次元エンティティにフラット化しようとしているので、悲しくなります。 あなたの仕事は、任意の文字列を展開して、素敵な街の空の景色を出力することです。 文字列を考えてみましょう: aaabbbbbccqrrssstttttttPPw 次のようになります。 tt tt bb tt bb tt aabb sstt aabbcc rrssttPP aabbccqqrrssttPPww (はい、はい、文字は都市のスカイラインのように見えるように複製されています)。 入力文字列を取得し、一致する文字(必ずしもアルファベット文字である必要はありません)の各サブセクションを複製し、都市を構築します! 最短のコードバイトが優先されます。 私は実際に要件が決まっていると思っていましたが、いくつかの質問に答えるために: それは地面になければなりません 必要に応じて余分な空を空けることができます(先頭の空白行、周囲の空白スペース)-ただし、建物の間ではありません 文字列内で文字を再利用できます(同じアーキテクチャ、異なる場所) 文字はASCIIであると想定されますが、追加のエンコード(UTF8など)をサポートする文字にはより多くの才能が与えられます

30
同じ数字を逆にして、1からnまでの数字をインターリーブします
簡単なもの: 正の整数を取るN 1000未満、及び出力から整数1のnがから整数でインターリーブNに1。数字を連結して、区切り記号なしで数字が表示されるようにする必要があります。 テストケース: n = 1 11 n = 4 14233241 n = 26 12622532442352262172081991810171116121513141413151216111710189198207216225234243252261 n = 100 110029939849759669579489399210911190128913881487158616851784188319822081218022792378247725762675277428732972307131703269336834673566366537643863396240614160425943584457455646554754485349525051515052495348544755465645574458435942604161406239633864376536663567346833693270317130722973287427752676257724782379228021812082198318841785168615871488138912901191109299389479569659749839921001 これはコードゴルフであるため、各言語のバイト単位の最短の提出が勝ちです。説明が奨励されます。

16
XKCDパスワードジェネレーター
前書き どうやら、この質問はここで尋ねられており、残念ながら終了しました。もう一度試してみるのは良い考えだと思いましたが、正しくやっていました。 XKCDは、「覚えにくいパスワード」を使用するように訓練されている方法を見て、安全だと思いますが、代わりにコンピューターをクラックするのに3日かかります。反対に、4〜5語を覚えると、Kuanのパスワードイントロピーが高まり、覚えやすくなります。クレイジーだよね? チャレンジ 今日の仕事は、単語を使用して5つのパスワードを作成することです。パスワードごとに4単語、単語ごとに最低4文字、ただし最大値はありません。Kuanのパスワードイントロピーは、すべてのパスワードについて計算する必要がありますが、強制的な最小値は設定されません。 Kuanのパスワードイントロピーとは何ですか? Kuanによると、Kuanのパスワードイントロピーは、パスワードがどれほど予測不能であるかの尺度です。単純な計算があります:Eは=ログ2(R)* Lを。EはKuanのパスワードイントロピー、Rは使用可能な文字の範囲、Lはパスワードの長さです。 利用可能な文字の範囲は自明です。パスワードに使用できる文字の範囲です。この場合、大文字と小文字です。アルファベットには26文字あるため、パスワードの全範囲で26 x 2 = 52文字です。 パスワードの長さも自明です。作成後のパスワードの合計の長さです。 制約 入力なし。 同じパスワードで単語を再表示することはできません。 パスワードには記号や数字を使用できません。 パスワードごとに4ワード、ただしワードごとに最低4文字。 単語間にスペースはありません。 同じパスワードを何度も生成することはできません。 各単語はパスワードで大文字にする必要があります。 出力は人間が読めるものでなければならず、間隔をあける必要があります。上記のKuanのパスワードイントロピー式を使用して、パスワードのKuanのパスワードイントロピーも含める必要があります。 辞書。これを使用し、テキストファイルとしてダウンロードし、それに応じて統合する必要があります。これは、単語を取得するリストになります。コードは利用可能であると想定する必要があります。 これはcode-golfで、最短バイトが勝ちます。 出力 TriedScarProgressPopulation 153.9 TryingPastOnesPutting 119.7 YearnGasesDeerGiven 108.3 DoubtFeetSomebodyCreature 142.5 LiquidSureDreamCatch 114.0
34 code-golf  math 

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