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

コードチャレンジは、他のスコアリングタグ(コードゴルフなど)ではカバーされない客観的な勝ち基準でプログラミングパズルを解くクリエイティブな方法の競争です。

30
あなたの言語で最も強力な5人のキャラクターは何ですか?
言語がサポートする5文字を選択します。5つあります!= 5×4×3×2×1 = 120個の方法で、これらを各文字を1回ずつ含む5文字の文字列に配置できます。120の順列。 120の各文字列が言語で実行されるときに、生成される120の出力が1から120までの一意の整数になるように、文字を選択します。 つまり、単一の数値を出力する実行可能コードを生成する5文字の120個の順列のそれぞれについて、それらすべての数値のセットが1から120までの整数のセットにできるだけ近く一致するようにします。 したがって、理想的には、最初の順列はを出力し1、次2、次3、次へと続きます120。しかし、その理想はほとんどの言語と文字にとっておそらく不可能です。 5文字の文字列は次のように実行できます。 入力のないプログラム 引数なしの関数 REPLのコマンド 必要に応じて、異なる方法で異なる文字列を実行できます 出力をカウントするには、次のような通常の方法での単一の整数出力である必要があります。 標準出力に印刷される 関数によって返された REPL式の結果 コードは正常に終了するはずです(最初に数値が出力されている限り、エラーが発生する可能性があります)。まったく実行されないコードでも問題ありません。(存在しない)出力だけはカウントされません。異なる出力が言語の標準でない限り、出力される数値は10進数でなければなりません。 1から120の最も明確な数字を生成するサブミッションが勝ちます。同点の場合は、以前の提出が優先されます。 ノート 5つのキャラクターがすべて異なる必要はありませんが、もちろんキャラクターが重複していると、順列の効果的な数が減ります。 32.0countやplain などのフロート出力32。(しかし、32.01そうではありません。) 032countやplain などの先行ゼロ32。 有効な出力は確定的であり、時間に対して不変である必要があります。 バイトではなく文字を扱っています。 例 文字123+*は、Python(または多くの言語)のREPLの合理的な最初の選択肢です。結果の120の順列と出力は次のとおりです。 123+* n/a 123*+ n/a 12+3* n/a 12+*3 n/a 12*3+ n/a 12*+3 36 132+* n/a 132*+ n/a 13+2* n/a 13+*2 n/a 13*2+ n/a …

30
次々とOEIS
13/03/2018 16:45 UTCの時点で、勝者はScroobleによる回答#345 です。これは、コンテストが公式に終了したことを意味しますが、ルールに従っている限り、回答を投稿してください。 同様に、回答数の観点から上位3人の回答者に簡単に叫んでください。 1. NieDzejkob -41の答え 2. KSmarts -30の答え 3. ハイパーニュートリノ-26の答え これは、OEISのシーケンスと前回の提出の長さを使用する回答連鎖質問です。 この回答連鎖の質問は、次のように機能します。 最初の回答を投稿します。他のすべてのソリューションは、そこから派生する必要があります。 次のユーザー(userAと呼びましょう)は、そのインデックス番号(以下を参照)がコードの長さと同じであるOEISシーケンスを見つけます。 次に、シーケンスを使用して、未使用の言語で、入力nとして整数を取り、そのシーケンスのn番目の数値を出力するプログラムをコーディングする必要があります。 次に、彼らは私のソリューションを投稿し、新しいユーザー(userB)は同じことを繰り返さなければなりません。 nシーケンスのth番目の用語は、最初の値のn回後の用語であり、最初の値がそのOEISページで指定された最初の値で動作します。この質問では、これらのシーケンスに0インデックスを使用します。たとえば、A000242およびのn = 3場合、正しい結果は25になります。 しかしながら! これはcode-golfではないため、最短のコードは重要ではありません。ただし、コードの長さにはまだ影響があります。シーケンスの重複を防ぐには、バイトカウントが一意でなければなりません。これは、ここで送信された他のプログラムが、あなたと同じ長さのバイト数になることはないことを意味します。 最後の投稿の長さのシーケンスがない場合、投稿のシーケンスは最も低い未使用のシーケンスです。これは、使用されるシーケンスも一意である必要があり、シーケンスがバイトカウントと同じであってはならないことを意味します。 回答が投稿され、新しい回答が1週間以上投稿されなかった後、最後に投稿された前の回答(チェーンを中断しなかったもの)が勝ちます。 入出力 汎用の入力および出力ルールが適用されます。入力は整数または整数の文字列表現でなければならず、出力はシーケンス内の正しい値でなければなりません。 書式設定 ほとんどの解答連鎖質問と同様に、解答は次のようにフォーマットしてください # N. language, length, [sequence](link) `code` [next sequence](link) *anything else* ルール 回答を投稿する前に、投稿してから少なくとも1時間待つ必要があります。 連続して2回(またはそれ以上)投稿することはできません。 シーケンスのインデックス番号は、Aパートの後の番号であり、先行ゼロが削除されています(たとえばA000040、インデックス番号は40) 入力も必要な出力も言語の数値範囲外ではないと想定できますが、たとえば数字1のみを使用できる言語を選択することでこれを悪用しないでください。 提出の長さが65536文字を超える場合は、コードにアクセスする方法へのリンクを提供してください(たとえば、ペーストビン)。 n 精度の不一致が言語の競合を止めることを防ぐためだけに、1000より大きくなることはありません。 150(有効な)回答ごとに、言語を使用できる回数が増えます。したがって、150のソリューションが投稿された後、すべての言語が2回使用される可能性があります(以前の回答はすべてこれにカウントされます)。たとえば、150個の回答が投稿された場​​合、Python 3は2回使用される可能性がありますが、既に1回使用されているため、300個の回答が投稿されるまで1回しか使用できません。 …

30
ユニークは安い
特定の文字列のコストを決定する関数またはプログラムを記述します。ここで、 各文字のコストは、文字列のこの時点までに文字が発生した回数と等しくなります。 文字列のコストは、文字のコストの合計です。 例 の入力のabaacab場合、コストは次のように計算されます。 a b a a c a b 1 2 3 4 occurrence of a 1 2 occurrence of b 1 occurrence of c 1+1+2+3+1+4+2 = 14 したがって、文字列のコストabaacabは14です。 ルール 提出のスコアは、上記で定義されたコードのコストです。つまり、提出が独自のソースコードで実行され、スコアが低いほど優れています。 送信は、印刷可能なASCII文字に加えて、送信で使用されるすべての文字を含む文字列で機能する必要があります。 文字は大文字と小文字が区別されます。つまりa、A異なる文字です。 テストケース input -> output "abaacab" -> 14 "Programming Puzzles & Code Golf" -> 47 …

30
汎用整数プリンター
少なくとも3つの異なる言語で実行可能なコードを記述します。コードは1、言語番号1、2言語番号2、3言語番号3などで整数を出力する必要があります。 ルール: 出力は整数のみでなければなりませんが、末尾の改行は問題ありません。 コードはいかなる種類の入力も受け付けません 同じ言語の異なるメジャーバージョンは一意と見なされます。したがって、コードはPython 2およびPython 3で実行可能ですが、Python 2.5およびPython 2.7は一意とは見なされません。 esolang / wiki記事、利用可能なインタープリターおよびドキュメントがあり、このチャレンジで使用する前に少なくとも2人のユーザーがPPCGで使用している場合にのみ、新しい言語を使用できます。また、これらの4つの規則を遵守する必要があります。 提出のスコアは、コード内のバイト数を、キューブで実行できる言語の数で割ったものです。したがって、3つの言語で実行可能な54バイトのソリューションのスコアは2です。 54 / 3^3 = 2 スコアが低いほど優れています。 リーダーボード コードスニペットを表示 <style>body { text-align: left !important} #answer-list { padding: 10px; width: 290px; float: left; } #language-list { padding: 10px; width: 290px; float: left; } table thead { font-weight: bold; } …

11
Markdown爆弾を作成する[終了]
私たちのほとんどは、悪意を持って作成された入力が非常に不均衡な出力を作成するzip爆弾および同様の解凍爆弾トリックを聞いたことがあると思います。ある時点でコンパイラーにそれをするために、ここで質問さえしました。 さて、Markdownはソートの圧縮形式であり、かさばるHTMLタグを「圧縮された」MDトークンに置き換えることがわかりました。したがって、Markdownで圧縮爆弾を作成することは可能でしょうか? チャレンジルール: 提出は、50〜256文字のマークダウンテキストである必要があります。(3文字の応答などを投稿するスマートアレックを回避するための最小要件を課します。) 提出物は、このサイトで実装されているStackExchangeのMarkdownプロセッサによって処理されます。 スコアは、マークダウンテキストの文字数に対する結果のHTMLの文字数の比率になります。 最高スコアが勝ちます。

18
この言語はいつリリースされましたか?
あなたの挑戦は簡単です。STDOUTか、それが書かれている言語がリリースされた年にファイルに出力するプログラムを書く必要があります。これは非常に単純なタスクであるため、ツイストは、できるだけ多くの異なる言語で作成する必要があることです。 スコアは、正しく印刷された異なる年の総数です。 使用する言語ごとに、 使用している言語のバージョンを指定します。(複数のバージョンがある場合) そのバージョンが最初にリリースされた年を指定し、 バージョン/言語の日付を証明するページへのリンクを提供します。 バージョン番号(該当する場合)とリリース日を指定している限り、これらのいずれもリリース日証明としてカウントされます。 ウィキペディアのページ。 esolangsページ。 言語の公式ウェブサイト。githubページまたは同様のページは、リリース日があればカウントされます。(コードのどこかにバージョン番号がない限り、最新のコミットはカウントされません) 言語の複数のバージョンまたはリリースがない場合は、その言語の最初のリリース日を使用してください。 同じ言語のマイナーバージョンではない限り、彼らは別の年から来て、まだ正確な出力を生成するように、など、さまざまな言語を数えます。使用している言語の現在のバージョンに関する情報(リリース日を含む)を提供する組み込み機能は使用できません。たとえば、これは無効なpython送信です。 import platform i = platform.python_version() if i == '3.5': print(2015) if i == '3.4': print(2014) if i == '3.3': print(2012) ... どちらの提出物が最も明確な年を正しく印刷しても勝ちます! ルール 各プログラムは、言語の年を印刷する必要があります。末尾の改行(windowsスタイルまたは* nixスタイル)が許可されます。 プログラムは入力を受け付けません。 同点の場合、バイト単位で記録された最短のコードが優先されます。これには任意のエンコーディングを使用できますが、すべてのプログラムで同じエンコーディングを使用する必要があります。 正しい出力がまだSTDOUTまたはファイルに出力されている限り、どのプログラムでもSTDERRに出力したり、実行時/コンパイル時のエラーや警告をスローしたりできます。 異なる言語では異なるIOメソッドを使用できますが、ほとんどすべてが完全なプログラムであり(このチャレンジでは機能しない)、許可されているデフォルトのIOメソッドの 1つに従います。 ハッピーゴルフポリグロット!

15
C ++で最長のエラーメッセージを生成する
(標準C ++コンパイラでは、可能な限り長いエラーメッセージを生成する短いプログラムを、書くgcc、cl.exe、icc、またはclang)。 各エントリのスコアは、コンパイラが発行した最長のエラーメッセージの文字数です。ソースコードに含まれ、コンパイラによって引用された型は、単一の文字としてカウントされます。 不正行為 長い名前のテンプレートでは、テンプレート内のテンプレートをいつでも再定義できますが、創造的なものを期待しています。私は最後のルールでその一部を防止しようとしましたが、もちろんルールはより良くなる可能性があり、改善ができてうれしいです。

30
うわー、これらのバイトはグロスです
文字列が与えられたときに、できる限り多くの個別のバイトをフィルターし、クリーンな文字列を返すプログラムまたは関数を作成します。ただし、プログラムはそれらを嫌っているので、これらのバイトはあなた自身のコードには存在できません。 スコアは、プログラムが入力から除外する個別のバイト数であり、高いほど良いです。これは、255の最大スコアです(プログラムは最低1バイトでなければならないため)。タイブレーカーはコードの長さであり、低いほど良いです。 たとえば、プログラムがbytesを除外する場合、012345678910のスコアを受け取りますが、プログラム自体にこれらのバイトを含めることはできません。 ルール バイトはオクテットを意味します。 0から255の範囲の値を持つ整数のリストとして入力を受け取るオプションもあります。これらは同等のバイトに対応します。 出力は入力と同じ形式である必要があります ソースコードを読まない コードは空ではない必要があります はい、Lenguage / Unaryの回答があります。しかし、少なくともゴルフはしてください?;) ルールを編集: たとえば、文字列またはEOFの終了バイトと区別できない場合、バイトを無視することを選択できます。ただし、これは、提出物で使用できないこと、およびスコアにカウントされないことを意味します。そうすることを選択した場合、最大スコアは254になりますが、入力にあるそのバイトを処理する必要はありません。

30
アウトゴルフできますか?(警官セクション)
警官セクション 強盗セクションはここにあります。 おかげFryAmTheEggman、ピーター・テイラー、ネイサン・メリル、XNOR、デニス、LaikoniとMEGO彼らの貢献のために。 チャレンジ あなたの仕事は、2つの異なるプログラム(完全なプログラム/関数/など)を同じ言語と同じバージョン(たとえば、Python 3.5≠Python 3.4、したがって許可されていない)で、nが与えられた場合(STDIN /関数引数を使用して)/ etc。)、aが選択したOEISシーケンスであるa(n)を計算します。これらのプログラムの1つは他のプログラムよりも短いです。2つの長いプログラムを送信するだけです。もう1つは、7日後に割れない場合に保存する必要があります。プログラムがアウトゴルフされたとき(1バイト以上であるかどうかに関係なく)、提出物はクラックされます。 たとえば、選択したタスクが2× nを実行することであった場合、これは有効な送信(Python 2)になります。 Python 2、16バイト、スコア= 15/16 = 0.9375 print(2*input()) A005843を計算します(オフセット= 0)。 提出物がクラックされている場合は、ヘッダーに次のように記載する必要があります。 Python 2、16バイト、スコア= 15/16 = 0.9375、[クラック] +リンク print(2*input()) A005843を計算します(オフセット= 0)。 オフセット これは、すべてのOEISページにあります。たとえば、A005843の場合、オフセットは0,2です。最初のもののみを使用する必要があり0ます。つまり、関数は0以上のすべての数値に対して定義されます。 つまり、関数OEIS(n)はn = 0で始まります。プログラムは、OEISによって指定されたすべてのケースで機能する必要があります。 詳細情報を見つけることができます こちらをご覧ください。 得点 提出に対して得られるスコアは、次の式と等しくなります。 スコア = シークレットコードの長さ(バイト単位) ÷長さ(バイト単位)公開コードの長さ(バイト単位) 上記の例のスコアは15÷16 = 0.9375です。 最低スコアの提出が勝ちです。ソリューションを投稿した提出物のみが受賞の対象となります。 ルール 必要なタスクは、選択したOEISシーケンスです。 与えられたn個、出力OEIS(N) …

30
違法な文字列を見つける
課題は、文字の文字列を見つけることですができませんに表示されるすべてのお好みのプログラミング言語で法的なプログラムを。これには、コメント、文字列、またはその他の「実行不可能な」部分が含まれます。 チャレンジ プログラムは、言語のコンパイラ/インタープリター/ランタイム環境の特定のバージョンまたは実装に固有のものである場合があります。その場合、詳細を指定してください。 標準のコンパイラ/インタープリター/ランタイムオプションのみが許可されます。特定の結果を得るために、コンパイラに奇妙なフラグを渡すことはできません(たとえば、フラグを渡して警告をエラーに変換する)。 プログラミング言語が特定のエンコード(UTF-8など)を必要とする場合、文字列も正しくエンコードする必要があります(つまり、文字デコードエラーのみによって失敗する文字列は許可されません)。 提出する個々のキャラクターはすべて、法的プログラムで認められる必要があります。つまり、常に拒否される文字を使用することはできません。 与えられたとき、コンパイラ/インタプリタ/ランタイムはエラーを与える必要があります任意の部分文字列として、あなたの文字列が含まれているソースコードを。エラーはプログラム間で同じである必要はありません。文字列を埋め込むと構文エラーが発生し、別の文字列を埋め込むとランタイムエラーが発生する可能性があります。 得点 各言語の最短の違法文字列が優先されます。 文字列が違法である理由を説明する必要があります(正当なプログラムのどこにも表示できない理由)。 コメント内の誤った解決策に異議を唱えます。より具体的には、提案された部分文字列を含む合法的なプログラム(エラーを生成しないプログラム)を示すTIOまたは同等物へのリンクを提供する必要があります。 一部の言語(Bash、Batch、Perlなど)では、妥当性に影響を与えることなく(__DATA__Perlでの使用など)プログラムに任意のバイナリデータを追加できます。そのような言語については、そのような末尾のセクションにのみ表示されるソリューションを提出できます。回答にそのことを必ず書き留めてください。(この「末尾セクション」の定義は言語に依存しますが、一般的には、パーサーがスクリプトの読み取りを完全に停止した後のテキストを意味します)。 例 Pythonでは、私は提出するかもしれません x """ ''' しかし、これは大きなプログラムに埋め込むことができます """ x """ ''' y ''' そのため、許可されていません。

9
米の粒を数える
さまざまな量の未調理の白米のこれら10個の画像を考えてみてください。 これらは唯一のサンバイルです。画像をクリックしてフルサイズで表示します。 A: B:C:D:E: F: G:H:I:J: 穀物カウント: A: 3, B: 5, C: 12, D: 25, E: 50, F: 83, G: 120, H:150, I: 151, J: 200 に注意してください... 粒子は互いに接触する場合がありますが、重なることはありません。グレインのレイアウトが1グレイン以上になることはありません。 画像の寸法は異なりますが、カメラと背景が静止しているため、すべての米のスケールは一貫しています。 粒子が範囲外に出たり、画像の境界に触れたりすることはありません。 背景は常に黄色がかった白の同じ一貫した色合いです。 小粒と大粒はそれぞれ1粒としてカウントされます。 これらの5つのポイントは、この種のすべての画像の保証です。 チャレンジ そのような画像を取り込み、可能な限り正確に米の粒数をカウントするプログラムを作成します。 プログラムは画像のファイル名を取得し、計算した粒子数を出力する必要があります。プログラムは、JPEG、ビットマップ、PNG、GIF、TIFF(現在はすべてJPEG)の画像ファイル形式の少なくとも1つで動作する必要があります。 あなたは可能画像処理とコンピュータビジョンライブラリを使用しています。 10個のサンプル画像の出力をハードコードすることはできません。アルゴリズムは、同様のすべての米粒画像に適用できる必要があります。まともな最新のコンピューターで 5分未満で実行できるはずです。画像領域が2000 * 2000ピクセル未満で、米粒が300未満の場合、です。 得点 10個の画像のそれぞれについて、実際の粒子数からプログラムが予測する粒子数を引いた絶対値を取ります。これらの絶対値を合計してスコアを取得します。最も低いスコアが勝ちます。スコア0は完璧です。 同点の場合、最も高い投票数の回答が勝ちます。追加の画像でプログラムをテストして、その有効性と正確性を検証する場合があります。

30
-ENDED-他の何かのように見えることをする[終了]
スニペット、関数、プログラムなどを記述します。これは、他の何かを実行していることが一見すると明確に見えるように難読化されています。 たとえば、2つの数字を追加するコードを少し書きますが、誰かに「それは何をしますか?」と尋ねると、「Hello、World!」と表示されます。 ルール コードは、使用する言語をおおまかに知っている人が読めるようにする必要があります(APLのような組み込みの難読化された言語は、自分の利益のために避けてください)。 コードは、読者が最初は予測できなかった予期しないことを行わなければなりません。 異なる読者に尋ねるとき、彼らはコードが何をするかについて同じ(間違った)意見を持たなければなりません。 格付け そこに何が起こるかをよく知るために、他の競技者のコードを最大10〜20秒間読んでください。 回答にコメントを追加して、コードが何をすると思うかを伝えます。あなたが与えたい答えが既にそこにあるなら、単にコメントを+1してください。(その回答を見逃して別のコメントを追加しても、心配しないでください。別の回答としてカウントされません)。 ポイントは次のように認識されます:(maxFalseOpinion- goodGuess)/ totalOpinion(以下の例を参照)。 フェアプレイで他の参加者を評価し、自分のコードにコメントしないでください。 有用なコメントのみを追加してください。「わからない」と「良いもの!」は避けてください。これらは評価では考慮されませんが、難読化する必要があるのはコードであり、評価ではありません。 評価の例 スニペットは2つの数字を追加します。コメントは言う: (3)「Hello、World!」と表示されます (1)2つの数値を減算します。 (2)2つの数字を追加します。 ポイントの合計量は、意見の最大数(3)-推測の総数(2)を推測の合計量(3 + 1 + 2 = 6)で割ったものです。結果:(3-2)/ 6 = 1/6 = 16.67%。 ポイントの詳細 人々はポイントを理解するのに苦労しているようです。 完全なスコアは次のとおりです。 printf('Hello World'); コメント: ボタンをクリックした回数を表示します。(17コメント)。 合計:17コメント スコア:(17-0)/ 17 = 1 = 100% ラメスコアは次のとおりです。 printf('Hello World'); コメント: 「Hello …

30
10バイトのコードの最大数
目標は、わずか10文字のコードを使用して、可能な限り最大数を(標準出力に)印刷することです。 組み込みの指数関数を除き、言語の機能を使用できます。 同様に、数値の入力に科学表記法を使用することはできません。(したがって、ありません9e+99。) プログラムは、ユーザーからの入力なしで番号を印刷する必要があります。同様に、他のファイルやWebなどからの読み取りもありません。 プログラムは、単一の数値を計算して印刷する必要があります。文字列を印刷することも、同じ桁を何千回も印刷することもできません。 何でも印刷するために必要なコードを10文字の制限から除外できます。たとえば、print x構文を使用するPython 2では、プログラムに最大16文字を使用できます。 プログラムは実際に出力で成功する必要があります。世界最速のコンピューターで実行するのに1時間以上かかる場合、それは無効です。 出力は、任意の形式であってもよい(あなたは印刷することができるように999、5e+100など) Infinityは抽象的な概念であり、数字ではありません。したがって、有効な出力ではありません。

30
小さな「H」から「H」を作成する
チャレンジ 整数を指定するとsize、次のことを行う関数またはプログラムを作成します。 size1に等しい場合、出力 H H HHH H H 場合はsize1、出力よりも大きく、 X X XXX X X どこXのプログラム/関数の出力size - 1 (必要に応じて0、回答で指定する限り、ベースケースをに対応させることができます) 次の出力形式のいずれかが受け入れられますが、どちらがより便利です。 任意の二つの異なる文字に対応する必要な構造の文字列Hとspace 対応する任意の二つの別個の値を要求される構造を有する二次元アレイ、H及びspace 任意の二つの別個の値は、対応する各列における出力の一つの行と列/文字列のリスト、Hおよびspace 各行に一定量の先行スペースがある限り、先行スペースを使用できます。2つの異なる出力文字は、異なる限り、選択したものに依存します。 コードが返す出力形式を指定します。 テストケース 1 H H HHH H H 2 H H H H HHH HHH H H H H H HH HH H HHHHHHHHH H HH HH …
73 code-golf  ascii-art  fractal  code-golf  code-golf  string  code-golf  string  matrix  code-golf  graph-theory  maze  binary-matrix  code-golf  kolmogorov-complexity  random  code-challenge  metagolf  test-battery  brain-flak  text-processing  code-golf  matrix  code-golf  number-theory  primes  code-golf  string  matrix  code-golf  binary  bitwise  code-golf  number  factorial  floating-point  code-golf  number  sequence  code-golf  sequence  cops-and-robbers  code-golf  sequence  cops-and-robbers  code-golf  string  code-golf  math  decision-problem  number-theory  integer  code-golf  number  decision-problem  functional-programming  code-golf  array-manipulation  matrix  code-golf  string  classification  string  code-challenge  binary  compression  decode  code-golf  string  string  code-challenge  balanced-string  encode  code-golf  number-theory  integer  base-conversion  code-golf  math  number-theory  geometry  abstract-algebra  code-golf  array-manipulation  sorting  optimization  code-golf  math  geometry  image-processing  generation  code-golf  string  cops-and-robbers  repeated-transformation  grammars  cops-and-robbers  repeated-transformation  grammars  code-challenge  restricted-source  tips  source-layout  javascript  code-challenge  kolmogorov-complexity  restricted-source  code-golf  combinatorics  counting  math  fastest-code  linear-algebra  code-golf  math  permutations  matrix  linear-algebra  code-golf  string  decision-problem  restricted-source  code-golf  number  array-manipulation  subsequence  code-golf  number  array-manipulation  matrix  code-golf  brainfuck  code-golf  color  code-golf  quine  source-layout  code-golf  subsequence  code-golf  string  ascii-art  code-golf  string  ascii-art  alphabet  code-golf  decision-problem  interpreter  hexagonal-grid  halting-problem  code-golf  string  polynomials  calculus  code-golf  math  decision-problem  matrix  complex-numbers  code-golf  random  code-golf  number  arithmetic 

24
ツイート可能なハッシュ関数チャレンジ
このコードチャレンジでは、140バイト1以下のソースコードでハッシュ関数を記述します。ハッシュ関数は、入力としてASCII文字列を受け取り、出力として24ビットの符号なし整数([0、2 24 -1])を返す必要があります。 ハッシュ関数は、この大きな英国英語辞書2のすべての単語に対して評価されます。スコアは、ハッシュ値を別の単語と共有する(衝突する)単語の量です。 最も低いスコアが勝ち、最初のポスターでタイが壊れます。 テストケース 送信する前に、次の入力でスコアリングスクリプトをテストしてください。 duplicate duplicate duplicate duplicate 4以外のスコアを与える場合、バグがあります。 明確化ルール: ハッシュ関数は、配列全体ではなく、単一の文字列で実行する必要があります。また、ハッシュ関数は入力文字列と出力整数以外のI / Oを実行しない場合があります。 組み込みのハッシュ関数または同様の機能(たとえば、スクランブルバイトへの暗号化)は許可されていません。 ハッシュ関数は決定的でなければなりません。 他のほとんどのコンテストとは異なり、得点入力用に最適化することは特に許可されています。 1 Twitterではバイトではなく文字が制限されていることは承知していますが、簡単にするために、この課題の制限としてバイトを使用します。 2 Debianのwbritish-hugeから変更し、非ASCIIワードを削除します。

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