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

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

18
聖なる数字
多くのフォント(特にConsolasフォント)では、10進数の10桁のうち5桁に「穴」があります。これらの聖なる数字を呼び出します。 46890 したがって、5つの不浄な数字は次のとおりです。 12357 したがって、整数は、それが神聖な数字のみを含む場合は「神聖」として分類され、そうでない場合は「神聖でない」として分類されます。-聖ではないので、負の整数は聖になることができません。 聖なる整数は、それらが持つ穴の数に基づいてさらに分類されます。たとえば、次の数字の聖性は1です。 469 そして、これらの数字の神聖さは2です。 80 整数の全体的なホーリネスは、その桁のホーリネスの合計であると言います。したがって、80聖性は4になり99、聖性は2になります。 挑戦 2つの整数n > 0とが与えられた場合、ホーリー性が少なくともでh > 0あるnthの整数を出力しhます。入力および出力は、言語で表現可能な最大整数またはの2^64 - 1いずれか小さい方よりも大きくないと仮定できます。 h >= 1参照用に、holinessを含む最初の25個の聖なる整数のリストを以下に示します。 0, 4, 6, 8, 9, 40, 44, 46, 48, 49, 60, 64, 66, 68, 69, 80, 84, 86, 88, 89, 90, 94, 96, 98, 99 神聖さを持つ最初の25の聖なる整数h >= 2は次のとおりです。 0, …

30
忍耐、若い「パドバン」
誰もがフィボナッチ数列を知っています: あなたは正方形を取り、それに等しい正方形を付け、そして辺の長さが結果の長方形の最大の辺の長さに等しい正方形を繰り返し付けます。 結果は、数字のシーケンスがフィボナッチ数列である美しい正方形のらせんです: しかし、正方形を使用したくない場合はどうなりますか? 正方形の代わりに正三角形を同様の方法で使用すると、等しく美しい三角形のらせんと新しいシーケンス:Padovanシーケンス、別名A000931が得られます。 仕事: 正の整数、出力、シーケンスの番目の項、または最初の項を指定します。NNNaNaNa_NNNNNNN シーケンスの最初の3つの項はすべてであると仮定します。したがって、シーケンスは次のように開始されます: 1111 、1 、1 、2 、2 、3 、。。。1,1,1,2,2,3,... 1,1,1,2,2,3,... 入力: 正の整数N≥0N≥0N\ge0 無効な入力を考慮する必要はありません 出力: Padovanシーケンスの番目の用語、または Padovanシーケンスの最初の用語。NNNNNNN 最初の用語が出力される場合、出力は便利なものであれば何でもかまいません(リスト/配列、複数行の文字列など)NNN いずれかになります -indexedまたは -indexed000111 テストケース: (0インデックス、番目の用語)NNN Input | Output -------------- 0 | 1 1 | 1 2 | 1 4 | 2 6 | 4 14 | 37 …

25
スタン・リーへのオマージュ
残念なことに、最高のコミック作家の一人が昨日の午後に亡くなりました。多くのハリウッドスター、ミュージシャン、俳優、および他の多くの人々がこの素晴らしい作家に敬意を表しているので、私たちも何かをしなければなりません。 チャレンジ アベンジャーズのロゴを印刷 注:スペース文字以外の#の代わりに他の文字を使用できます。一方、スペースにはスペース文字を使用する必要があります ASCIIアートで ###### ############### ##### ########## #### ####### #### ### #### ### ### ### #### ### ### ### #### ### ### ### #### ### ### ### #### ### ### ### #### ### ### ### ########### ### ### ########### ### ### #### ### ### ### ### ### ### …

30
スタックの実装
まだこれがないとは信じられません。これはプログラミングで最も重要なデータ構造の1つですが、コードゴルフで実装するのに十分なほどシンプルです。 チャレンジ あなたの仕事は、数字をプッシュしたりポップしたりできるスタックを実装することです。実装をテストし、I / Oをシンプルに保つために、次のセットアップを使用します。 入力は、負でない整数のリストになります 正の整数はすべてを示し、はすべて示し -最上部の要素を破棄します。push( n ) 0 pop()nnnpush( n)push(n)\texttt{push(}n\texttt{)}000ポップ()pop()\texttt{pop()} 出力は結果のスタックになります 例 たとえば、が与えられた場合:[ 12 、3 、0 、101 、11 、1 、0 、0 、14 、0 、28 ][12,3,0,101,11,1,0,0,14,0,28][12,3,0,101,11,1,0,0,14,0,28] 12301011110014028[ 12 ][ 3 、12 ][ 12 ][ 101 、12 ][ 11 、101 、12 ][ 1 、11 、101 、12 ][ 11 、101 …

30
2つの値をマージする
それぞれ0「不明」またはのいずれかを表す2つの値があります1,2,3。次のようにそれらを単一の値にマージします。 両方の値がゼロ以外で等しい場合、その値を出力します。 (3,3) -> 3 両方の値がゼロではないが等しくない場合、不明の場合は0を出力します。 (1,2) -> 0 一方の値がゼロで、もう一方がそうでない場合、ゼロ以外の値を出力します。 (2,0) -> 2, (0,1) -> 1 両方の値がゼロの場合、ゼロを出力します。 (0,0) -> 0 テストケース: 16の可能な入力ペアがあります。 | 0 1 2 3 --+-------- 0 | 0 1 2 3 1 | 1 1 0 0 2 | 2 0 2 0 3 | 3 0 …
44 code-golf 

30
nとn + 1の連結
前書き OEISシーケンスA127421は、10進拡張が2つの連続する増加する非負数の連結である数のシーケンスです。簡単に言えば、配列中のすべての数は一緒に入れることによって形成されているNとN + 1の値が整数、いくつかの非負のためにN。最初のいくつかの用語は次のとおりです。 1、12、23、34、45、56、67、78、89、910、1011、1112、1213、1314、1415、1516、1617、1718、1819、1920、2021、2122、2223、2324、2425、 2526、2627、2728、2829、2930、3031、3132、3233、3334、3435、3536、3637、3738、3839、3940、4041、4142、4243、4344、4445、4546、… チャレンジ 単一の正の整数nを指定すると、OEISシーケンスA127421の最初のnエントリを昇順で出力します。 入力および出力は、任意の受け入れ可能な形式にすることができます。文字列または数値は出力に適しています。 先行ゼロは許可されません。 完全なプログラムまたは機能のいずれかが許可されます。 この課題のために、nは正で100未満です。 デフォルトでは、標準の抜け穴は許可されていません。 この質問はコードゴルフなので、バイト数が最も少なくなります。 入力と出力の例を次に示します。 1 => 1 2 => 1, 12 3 => 1, 12, 23 10 => 1, 12, 23, 34, 45, 56, 67, 78, 89, 910 ご質問がありましたら、お気軽にお尋ねください。幸運を。 PSこれは私の最初の挑戦なので、うまくいけばこれはすべて理にかなっています。 編集:数値または文字列を許可する出力制限を削除しました。

16
「レイジーソート」を実装する
私は数字のリストをソートすることになっていますが、私はとても怠け者です。すべての数字が昇順になるまですべての数字を入れ替える方法を考えるのは本当に難しいので、新しいリストがソートされることを保証する独自のアルゴリズムを思いついた¹。仕組みは次のとおりです。 サイズNのリストの場合、N-1回の反復が必要です。各反復で、 N番目の数値がN + 1番目の数値よりも小さいかどうかを確認します。そうである場合、これらの2つの数値は既にソートされているため、この反復をスキップできます。 そうでない場合は、最初のN個の数字を順番にデクリメントして、これら2つの数字が順番どおりになるまで続ける必要があります。 具体例を見てみましょう。入力があったとしましょう 10 5 7 6 1 最初の反復で、10と5を比較します。10は5よりも大きいため、小さくなるまでデクリメントします。 4 5 7 6 1 5と7を比較します。5は7より小さいので、この反復では何もする必要はありません。次のステップに進み、7と6を比較します。7は6より大きいため、最初の3つの数値を6未満になるまでデクリメントして、次のようにします。 2 3 5 6 1 ここで、6と1を比較します。ここでも、6は1よりも大きいため、最初の4つの数値を1より小さくなるまでデクリメントし、次のようにします。 -4 -3 -1 0 1 これで完了です!これで、リストは完全にソートされた順序になりました。さらに、さらに改善するために、リストをN-1回反復するだけで済みました。したがって、このアルゴリズムはO(N-1)時間でリストを並べ替えます。 今日の課題は、このレイジーソートを実装することです。プログラムまたは関数には、任意の標準形式の整数の配列が与えられます。この遅延ソートを実行し、新しい「ソート済み」リストを返す必要があります。配列が空になったり、整数が含まれたりすることはありません。 ここではいくつかの例を示します。 Input: 10 5 7 6 1 Output: -4 -3 -1 0 1 Input: 3 2 1 Output: …

19
アルファベットを入力-できるだけ早く!
あなたの仕事は、英語のアルファベットの文字をどれだけ速く入力できるかを測定するプログラムを作成することです。 プログラムは、小文字のみ受け入れるものaにzアルファベット順にします。 各文字は、同じ行に入力されたとおりにエコーされます(改行または文字間のその他の区切り文字はありません)。 無効な文字を入力すると、プログラムはFail 新しい行に出力して終了します。 26文字すべてを入力すると、プログラムは新しい行に、最初の文字から最後の文字までにかかった時間をミリ秒単位で出力して終了します。 最初の文字を入力すると、タイマーが開始されますa。 出力例: b Fail abcdefgg Fail abcdefghijklmnopqrstuvwxyz 6440 これはcode-golfであるため、バイト単位の最短回答が優先されます。

22
プライムカエル🐸
「prime frog」は、3または19に到達するまで整数間をジャンプする奇妙な動物です... プログラムは、整数nを入力として受け入れ、以下のアルゴリズムの結果(3または19)を出力する必要があります。 与えられた整数に対してn >= 2: fカエルの位置にしましょう。最初に設定されますn if f = 3またはf = 19:カエルがジャンプを停止した場合-プログラムと出力を停止しますf。 if fが素数の場合:カエルはその位置にジャンプし2×f-1ます。手順2に戻ります。 場合f複合体である:聞かせdすることfの最大のプライム除数。カエルはその位置にジャンプしf-dます。手順2に戻ります。 例: 以下の例n = 5: 5 > 9 > 6 > 3 stop プログラムは出力するはず3です。 別の例n = 23: 23 > 45 > 40 > 35 > 28 > 21 > 14 > 7 > 13 > …

12
アウトラインを保持しながら単語をスクランブルする
これは、どの文字がどの文字と交換されるかについての規則のため、単語内の文字をランダム化する方法やケンブリッジ転置よりもはるかに高度です。ここでは単純な正規表現では十分ではありません。 テキストの最初と最後の文字に加えて全体のアウトラインが一定である限り、単語の内包物がスクランブルされている間にテキストを読むことができることはよく知られています。印刷可能なAscii + Newlineテキストが与えられたら、次の規則に従って各単語をスクランブルします。 スクランブルは(擬似)ランダムでなければなりません。 単語は、AからZまでのラテン文字のシーケンスです。 頭文字のみが大文字になります。 最初と最後の文字はそのままにしておく必要があります。 スクランブルをかける場合、次のグループのいずれかの文字のみが場所を交換できます。 acemnorsuvwxz bdfhkl gpqy it j (所定の場所に留まる) 例 彼らのoeiltnusをpsrrnveiegしながら、Srcmableがすり減った txetは、最初の文字と最後の文字に加えてovaerll ontliues raemin canstnotである限り、trodのインランドがsrcambledされている間でもまだ読めることがよく知られています。patnirlbe Acsii + Nwnliee txetを考えると、samrclbe ecahの単語anoccdirgはこれらのrelusに当てはまります。 Smncrbliagは(プセド)ロンダムでなければなりません。 Wrodはラテン語のchreratacs、thurogh Zのシーケンスです。 初期のlrtteesのみが更新されます。 fisrtとlsat lettresはuctoenhudにとどまらなければなりません。 sarnclbimgの場合、fwllnoiog guorpsの1つを含む文字のみがプラークを変更できます。 aneusvrowxmcz bhkfdl gqpy it j (plcaeに滞在) エムザプル

30
スクエアになるのはヒップ
チャレンジ つまり、平方数や他の形状の数を扱う多くの課題がある一方で、単純に尋ねる課題はないようです。 整数n(where n>=0)が入力として与えられるnと、完全な正方形の場合は真の値を返し、そうでない場合は偽の値を返します。 ルール 標準のI / Oルールで許可されている限り、合理的で便利な手段で入力を取得できます。 選択した言語がネイティブに処理できる以上の入力を処理する必要はなく、浮動小数点の不正確さを引き起こすこともありません。 出力は、2つの一貫した真実/偽の値(たとえば、trueまたはfalse、1または0)のいずれかでなければなりません。入力が完全な正方形の場合は真実、そうでない場合は偽です。 これはコードゴルフなので、バイト数が最も少なくなります。 テストケース Input: 0 Output: true Input: 1 Output: true Input: 64 Output: true Input: 88 Output: false Input: 2147483647 Output: false

30
ABがAB Aである場合B else
2つの整数AとBが与えられ、AB(AからB)がAB(AからB)にある場合はAを出力し、そうでない場合はBを出力します。 「A-B」は標準的な減算です。 「AからB」は、Aから始まりBで終わる整数の範囲で、AとBの両方が含まれます。次に例を示します。 1 to 4: 1, 2, 3, 4 -2 to 5: -2, -1, 0, 1, 2, 3, 4, 5 3 to -1: 3, 2, 1, 0, -1 7 to 7: 7 バイト単位の最短コードが優先されます。 テストケース A B Output 1 4 4 -2 5 5 3 -1 -1 7 7 7 …

30
宝くじにハック
最近、危険なギャンブルサイトでアカウントを作成しました。25ドルの手数料で、0〜50ドルのランダムな金額が返されます。5ドルを2回取得した後、サイトが詐欺であることを証明することにします。デフォルトのパスワードで外部ファイアウォールにアクセスした後、データベースサーバーにアクセスし、最小値と最大値の値がどこにあるかを見つけます。最大値として25個の「9」を接続することにしましたが、最大値は「uint64」型でなければならないというエラーメッセージが表示されます。ただし、一部の数字キーがリモートコンソールに正しく入力されていないように見えるようになりました。チャレンジは、Q + Aサイトでタイプアップされたかのように、あなたの前に現れます。 特定の言語をテストおよび実行するために便利にインストールされたプログラムのみを使用して、符号なし64ビット整数値の最大サイズを出力しますが、プログラミングツールを除くほとんどすべてがこのマシンで破損し、数字1を使用せずに残ります2,4,6,8-ソースコードまたはリテラルのいずれかで、コードの追加部分ごとにプログラムを実行するのに指数関数的に長い時間がかかるようであることに気付くので、抽選の前に金持ちになりたい! 挑戦 数値または単一の文字列として、符号なし64ビット整数の最大値18446744073709551615を出力するプログラムを作成します。 ソースコードに「1」、「2」、「4」、「6」、「8」の文字を含めることはできません 言語に符号なし64ビット整数または同等の言語がない場合、出力は文字列形式などになりますが、上記の数値でなければなりません。 これはコードゴルフなので、各言語で最短のコードが優先されます。

30
この単語は字句順ですか?
入力文字列Sを指定すると、Sのtruthyすべての文字が字句順の場合に返されます。ASCII値は昇順または降順のいずれかである必要があります。falsy他の場合に戻ります。 入力 入力は同じケースになります(すべて大文字またはすべて小文字)。あなたの提出物は両方を処理できるはずです。 入力は範囲内のASCII [A-Za-z]のみで構成されます 入力長は、言語がサポートする最大値まで、少なくとも1です。 入力は文字列です-文字のリストではなく、ASCIIコードポイントの配列ではありません。 出力 出力は、trueまたはfalse、または0/1、またはtrue / falseあなたの言語が提供できる他の明確なスタイル出力でなければなりません。 すべての偽のケースは、すべての偽のケースと同様に、同じ出力を持つ必要があります。いいえ、「Falseは0、trueは1、2、または3」。 追加のルール 標準的な抜け穴は禁止されています 回答は、スニペットまたはREPLエントリではなく、完全なプログラムまたは関数でなければなりません。 code-golf、バイト単位の最短回答が勝ちます。 テストケース 真実の "ABCDEF" "ZYX" "no" "tree" --> the multiple 'e's don't break the order "q" 偽物 "ABCDC" "yes" "deed" 無効 "Hello" --> invalid input - mixed case-, does not have to be handled "" …

25
配列のサーバーソート
チャレンジ 整数の空でない配列が与えられた場合、例えば: [5, 2, 7, 6, 4, 1, 3] 最初に、前のアイテムよりも大きいアイテムがない配列(つまり、非昇順配列)にそれを切断します。 [5, 2] [7, 6, 4, 1] [3] 次に、各配列を逆にします。 [2, 5] [1, 4, 6, 7] [3] 最後に、それらをすべて連結します。 [2, 5, 1, 4, 6, 7, 3] これは、プログラムの出力/関数が返すものでなければなりません。この手順を十分に繰り返すと、配列が完全にソートされます。 ルール 入力および出力は、任意の標準的な方法で提供され、適切な配列形式で行われます。 入力配列が空になることはありませんが、マイナスや重複が含まれる場合があります。 各整数の絶対値は常に2 31未満です。 テストケース うまくいけば、これらはすべてのエッジケースをカバーします: [1] -> [1] [1, 1] -> [1, 1] [1, …

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