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

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

5
課題に近いコード:インセプション
これは、この課題の続編です。課題に近いコード:整数の合計 このチャレンジは少し難しく、またクールなタイトルになります(これが私が選んだ理由です): 2つの文字列間のレーベンシュタイン距離を計算する 最後の課題と同様に、この課題のスコアは、コードと上記の引用の間のレーベンシュタイン距離です。 それでは、詳細を説明しましょう! あなたのプログラムは2つの入力を受け取ります。両方の文字列には末尾のスペースや改行はなく、それらの間のレーベンシュタイン距離を出力します。レーベンシュティエン距離は、ある文字列を別の文字列に変換するために必要な追加、削除、および置換の数として定義されます。計算方法の詳細については、上記のリンクにあるウィキペディアのページをご覧ください。プログラムが機能するかどうかをテストするには、この計算機を使用します。プログラムは、2つの文字列間のレーベンシュタイン距離のみを出力する必要があります。他に何かが出力された場合、失格となります。 I / Oの例: Inputs: test test2 Output: 1 Inputs: 222 515 Output: 3 Inputs: Test test Output: 1 コードにノーオペレーションやコメントがない場合があります。

6
文字を共有せずに文字列を印刷する
編集:空白を再利用できます。 あなたの仕事は、同じ言語でn個のプログラム(または関数、またはパラメーターまたは関数名を使用せずに関数の本体)を書くことです。KプログラムTHは、出力すべき(カーディナル)数kの標準英語(オプション最後の改行を有する)小文字です。したがって、最初のプログラムは出力する必要がoneあり、2番目のプログラムは出力する必要がありますtwo。2つの部分を持つ数値の場合は、twenty-one。 ただし、提出物の2つのプログラムは、非空白文字または有用な作業を行う空白文字を共有できません。たとえば、あなたの最初のプログラムはただではない場合"one"、その後のどれ" o nとe、あなたの他のプログラムで再び使用することはできません。 空白文字(スペース、改行、タブ)を2つ以上のプログラムで使用できます。これらは、セパレーターまたはインデントとしてのみ機能し、それ自体では何もしません。したがって、それらをWhitespace言語で再利用したり、複数のプログラムの文字列で使用したりすることはできません。 印刷可能なASCII文字、タブ、および改行(CRおよびLFを含む)のみを使用できます。すべてのプログラムには少なくとも1文字が含まれている必要があります。 スコアは1 /プログラムサイズ^ 1.5の合計です。最高スコアが勝ちます。このスタックスニペット(またはこのCJamコード)を使用して、スコアを計算できます。 function updatescore(a){var l=a.value.split("\n"),s=0;for(var i=0;i<l.length;i++){var t=l[i].length;t-=t&&l[i][t-1]=="\r";if(t)s+=Math.pow(t,-1.5);}document.getElementById('result').textContent=s;} <textarea id="input" placeholder="Put your code here, one per line." style="width:100%;height:150px;box-sizing:border-box" oninput="updatescore(this)" onpropertychange="updatescore(this)"></textarea><div>Your score: <span id="result">0</span></div> コードスニペットを実行するHide resultsスニペットを展開

2
最前面のパズルソルバーを構築する
トップフロントサイドパズルは、3つの直交ビュー(上面図、正面図、側面図)が与えられた(通常は立方体)ブロックの3D形状を構築する必要があるパズルです。 たとえば、次のように上面図、正面図、および側面図を指定します。 Top: Front: Side: . . . . . . . . . . . . . x x . . x x . . x x . . x x . . x x . . x x . . . . . . . . . . …

3
あなたがそうですか?(首謀者の誘導体)
私はあなたのために厳しいものを持っています! 私のガールフレンドは最近、MTV(米国)で新しいショーに出会いました。それはひどいショーであり、その上で誰もがくだらないですが、「ゲーム」はかなり興味深いです。ウィキペディアから: あなたがそうですか?ハワイで一緒に生活している20人の人々をフォローして、ぴったりの相手を見つけます。10人の男性と10人の女性が10週間で10個の完全一致をすべて正しく選択できれば、100万ドルの利益を得ることができます。 ゲーム部分について(Wikipediaからも): キャストの各エピソードは、彼らの完璧な試合がチャレンジで競うことであると彼らが信じる人とペアになります。チャレンジの勝者はデートに行き、真実のブースで試合をテストする機会があります。キャストメンバーは、勝者のカップルのいずれかを選択して真実のブースに行き、完全一致かどうかを判断します。 これが一致を確認する唯一の方法です。各エピソードは、カップルに完全一致がいくつあるかを知らせるマッチング式で終了しますが、どのマッチが正しいかではありません。 TL; DR: これは首謀者の派生物です(具体的にはM(10,10))。ゲームのルールは次のとおりです。 10個の2セットから始めます。それらをセットAと呼びましょう:{A、B、C、D、E、F、G、H、I、J}とセット2:{1,2,3,4,5、 6,7,8,9,10} コンピューターは{A1、B2、C3、D4、E5、F6、G7、H8、I9、J10}の形式でソリューション(ユーザーには表示されません)を作成します。ここで、セットAのメンバーは1対1にマッピングされます解決策の別の例は{A2、B5、C10、D8、E1、F7、G6、H4、I9、J3}です。 最初のターンの前に、選択した特定のペアが正しいかどうか尋ねます。質問の形式は{A1}(例:{C8})で、1(正しいことを意味する)または0(推測が間違っていることを意味する)のいずれかを受け取ります。 最初の実際のターン。{A1、B2、C3、D4、E5、F6、G7、H8、I9、J10}の形式、または任意の順列で最初の推測を行います。 推測にはアイテムの倍数を含めることはできません。つまり、{A1、A2、A3、A4、A5、B6、B7、B8、B9、B10}の推測は有効な推測ではありません。各ターンの後に、コンピューターは正しい一致の数を通知しますが、どの一致が正しいかは通知しません。 ステップ3と4を繰り返し、すべての試合が正しくなるまで(つまり、10の応答)、または10の動きが上がるまで(どちらか早い方)。10ターン前または10ターン目に解決した場合、100万ドルを獲得します。そうでなければ、あなたは負け、何人かの人々(または文字と数字)は一人で家に帰り、10匹の猫と永遠に過ごす。 これは最短のコードコンテストではありません。推測の最小平均数でランダムマッチングを解決できる人が勝者になります。巧妙なゲームプレイと計算速度も考慮されます。平均ターン数はほぼ確実に10を超えると想定しているため、$ 100万の賞金(おそらく私ではなくMTVから支払われる)を獲得する確率はわずかです。ただ、どのようにそれが大賞を獲得するキャストは不可能でしょうか? 注:{A1、B2、...}形式で入力する必要はありません。質問でそのフォームを使用して、パズルが何であるかを完全に明確にしました。このフォームに入れない場合は、呼び出し方法を説明してください。 幸運を!

3
最短のブラケット番号を見つける
ブラケット番号は、左ブラケット、スペース、および右ブラケット([ ])のみを使用して大きな整数を表す簡単な方法を提供します。 ブラケット番号は、チャンク[...]と呼ばれる一致するブラケットの1つ以上のペアの文字列として定義されます。それぞれのペアは、0個以上のスペースで隣接するものと区切られます。 各チャンク間のスペースの数は、それらの間のハイパーオペレーションを定義します。スペースなしは加算を意味し、1スペースは乗算を意味し、2スペースは累乗を意味し、3スペースはテトラションを意味します。高次のハイパーオペレーションが優先されるため、累乗の前にテトラションが発生し、乗算の前に累乗が発生します。これらも右結合なので、a^b^cとして計算されa^(b^c)ます。(しかしa^b*c、まだ(a^b)*cです。) 各チャンクは空([])であるか、別のブラケット番号を含む場合があります。空のチャンクの値は0です。空でないチャンクの値は、含まれているブラケット番号に1を加えた値です。 例:(^^、テトレーションされ^^^ているペンテーション) [[]]0([])1ずつ増加するため、値1 [[[]]]値は2ですが[[]][[]]、2つの値([[]])が追加されているため、値も2です。 [[[]]] [[[[]]] [[[[]]]]][[[]]] 値は20 =(2 *((2 ^ 3)+1))+ 2です [[[]]] [[[[]]]] 値は65536 = 2 ^^^ 3 = 2 ^^(2 ^^ 2)= 2 ^^ 4 == 2 ^(2 ^(2 ^ 2)) [[[[]]]] [[[]]] [[]] 値は7625597484987 = 3 ^^^(2 ^^^ 1)= 3 ^^^ 2 …

10
帰宅途中で酔っぱらいを遅くする方法
次のような正方形のn x nグリッドグラフを考えます。 このグラフは11 x 11であることに注意してください。 任意の時点で、男性は交差点に立って、次の交差点まで一度に1ステップずつ垂直または水平に移動するだけです。悲しいことに、彼は少し飲みすぎたので、最大4つの可能な方向(上、下、左、右)からランダムに移動する方向を選択します。これは、彼が壁に立っているかのように、もちろん3つの選択肢しかなく、コーナーでは2つしか持っていないため、最大4つです。 彼は左下隅からスタートし、彼の目標は右上隅である家に帰ることです。時間は、単に彼が取るステップの数です。 しかし、あなたは悪意のある敵であり、彼ができるだけ早く家に帰ることを望んでいます。歩行中はいつでもグラフから任意の数のエッジを削除できます。唯一の制限は、彼が家に帰るために常に何らかの方法を残さなければならず、彼がすでに使用したエッジを削除できないことです。 課題は、可能な限り悪意のある敵を考案し、ランダムな飲酒歩行器を使用して100 x 100 20 x 20のグラフでテストすることです。スコアは、単純にランダムウォーカーが10 1000回以上実行されるまでの平均時間です。 Linuxで自由に利用でき、簡単にインストールできる限り、好きな言語とライブラリを使用できます。 何を実装する必要がありますか? ランダムウォーカーと攻撃者用のコードを実装する必要があり、実行時の出力が攻撃者コードを使用した1000回の実行の平均になるようにコードを組み合わせる必要があります。ランダムウォーカーコードは、(x-1、y)、(x + 1、y)、(x、y-1)、および(x、y + 1)から選択するだけなので、非常に簡単に記述できます。それらのどれも削除されていないか、範囲外です。 敵のコードはもちろんより難しく、酔っ払いが既に通過したエッジを覚えておく必要があるので、彼はそれらのいずれも削除しようとせず、酔っぱらいへのルートがまだあることを確認します。迅速に行うために。 補遺 10の実行は本当に十分ではありませんが、本当に長い散歩をすることができた人々を罰したくはありませんでした。私は今、人気のリクエストのために1000に増やしました。ただし、歩く時間が長すぎて現実的な時間内に1000回のランニングができない場合は、できるだけ多くのランニングをレポートしてください。 100 x 100のハイスコア表。 オプティマイザーによる976124.754。 103000363.218 by Peter Taylor。 編集1.グラフのサイズを20 x 20に変更して、テストの実行時間を短縮しました。人々がスコアを提出すると、そのサイズの新しい高テーブルスコアを作成します。 20 x 20のハイスコア表。 230,794.38 (100k runs) by justhalf 227,934 by Sparr 213,000 (approx) …

5
RadioASCII要素:ゆっくりと文字を失いながら周期表の要素を出力します
周期表の118個の(現在の)要素のリストを以下に示します(便宜上、折りたたまれたStack Snippetにあります)。 コードスニペットを表示 Hydrogen Helium Lithium Beryllium Boron Carbon Nitrogen Oxygen Fluorine Neon Sodium Magnesium Aluminium Silicon Phosphorus Sulfur Chlorine Argon Potassium Calcium Scandium Titanium Vanadium Chromium Manganese Iron Cobalt Nickel Copper Zinc Gallium Germanium Arsenic Selenium Bromine Krypton Rubidium Strontium Yttrium Zirconium Niobium Molybdenum Technetium Ruthenium Rhodium Palladium Silver …

8
ランダムクイン
自分自身をランダムに生成できるプログラムを作成します。 ソースコードで使用されるトークンに基づいてこれを行う必要があります。プログラムのソースコードが50個の一意のトークンで構成され、60個のトークンの長さがある場合、プログラムは各トークンが50個の一意のトークンからランダムに選択される60個のトークンを出力する必要があります。 たとえば、このプログラムは50 ^ 60分の1の確率で自分自身を再現します。 トークンとは何ですか?それは言語に依存します。たとえば、識別子(foo_bar)、キーワード(while)、および数字(42)は、ほとんどの言語でトークンとしてカウントされます。空白はほとんどの言語でカウントされません。 追加のルール: 出力には、プログラムのソースコードにあるトークンのみが含まれ、適切な区切り文字で区切られます 出力は、トークンでカウントされたプログラムのソースコードと同じ長さである必要があります 使用できるプログラミング言語は1つだけです ソースコードには少なくとも3つの一意のトークンが必要です ソースコードからコメントを除外する プログラムは、自分自身を再現する機会がU ^ Lに1つしかないはずです。 スコアリング:自分自身を再現する最良のチャンスがあるプログラムが勝ちます。

13
転置、素数、ああ!
タスクは簡単です。プログラムは整数を入力として読み取り、それが素数であるかどうかを出力します。「yes / no」、「true / false」、または結果を明確に識別するものを印刷できます。 課題は、コードが転置された行と列で動作する必要があることです。 明らかな解決策(コメントを使用して文字ごとに垂直に繰り返される最短の「単純な」解決策)を除外するために、メトリックは通常のcode-golfとは少し異なります。 この課題ではフォーマットが非常に重要であるため、コードサイズはコードが収まる最小の長方形の領域で測定されます。簡単にするために、ソリューションを投稿するときに実際にそれを行う必要があります)。例えば int main() { return 0; } 4 * 13 = 52のサイズになります(そして明らかに、2つの基準のいずれにも適合しません:素数検出と転置可能)。 最小サイズが勝ちます。 関数の唯一の目的が素数の検索、生成、または検出である場合を除き、任意の言語およびライブラリ関数を使用できます。 編集: おそらく勝者はGolfscriptソリューションでしょうが、最高のCまたはC ++ソリューションに対して50ポイントの賞金を授与します!

2
言語の名前を入力として受け取り、入力言語で実装されたものと同じものを出力するクイン
クインセントラルから: 言語名を入力として受け取り、入力言語で実装されたものと同じものを出力するクインを記述します。 ソース記事にはあなたが作業できるものがありますが、著者が言うように、これはずっと難しいです。明らかに、限られた言語のセットのみをサポートする必要があります。ただし、基本言語だけでなく、選択もあなた次第です。 コードチャレンジとして、スコアはプログラムがサポートする言語の数になります。高いほど良い。

3
ギャップを埋める
白の背景と黒のドットのセットを備えた白黒の画像が与えられたら、黒のピクセルの各ペアの間にパスがあるように、白のピクセルのセットを赤でペイントします。 詳細 パスは、接続されたピクセルのセットです(8近傍接続)。黒いピクセルをパスの一部として使用できます。目標は、上記の条件下で赤いピクセルのセットを最小化して、対応する画像を出力することです。 最適なソリューションを見つける必要はありません。 些細で同時に最悪の解決策は、すべての白いピクセルを赤で塗りつぶすことです。 例(視認性のためにピクセルが拡大されています): 詳細 (適切な形式の)ピクセル画像を指定すると、上記で指定したようにドットが接続された別の画像と、使用された赤いピクセルの数を示す整数が返されます。 スコアは、14個のテストケースのそれぞれの積(1 +赤いピクセルの数)です。 目標は最低のスコアを持つことです。 テストケース 14個のテストケースを以下に示します。出力の接続性を確認するためのpythonプログラムは、ここにあります。 メタ さまざまな提案をしてくれた@ Veskah、@ Fatalize、@ wizzwizz4、@ trichoplaxに感謝します。

11
ソース順列
順列セットのS= { s1、s2,…,sn}S={s1,s2,…,sn}S = \{s_1, s_2, \dotsc, s_n\}である全単射関数π:S→Sπ:S→S\pi: S \to S。例えば、S={1,2,3,4}S={1,2,3,4}S = \{1,2,3,4\}、関数π:x↦1+(x+1mod4)π:x↦1+(x+1mod4)\pi: x \mapsto 1 + (x + 1 \mod 4)は順列です: π(1)=3,π(2)=4,π(3)=1,π(4)=2π(1)=3,π(2)=4,π(3)=1,π(4)=2 \pi(1) = 3,\quad \pi(2) = 4,\quad \pi(3) = 1,\quad \pi(4) = 2 我々はまた、のは、見てみましょう、無限集合の順列を持つことができるNN\mathbb{N}例として:関数π:x↦x−1+2⋅(xmod2)π:x↦x−1+2⋅(xmod2)\pi: x \mapsto x-1 + 2\cdot(x \mod 2)は、2つのブロックの奇数と偶数の整数を交換する順列です。最初の要素は次のとおりです。 2,1,4,3,6,5,8,7,10,9,12,11,14,13,16,15,…2,1,4,3,6,5,8,7,10,9,12,11,14,13,16,15,… 2,1,4,3,6,5,8,7,10,9,12,11,14,13,16,15,\dotsc チャレンジ この挑戦のためにあなたの仕事は、任意の実装の機能/プログラムの書き込みにある1つの正の自然数の順列を。ソリューションのスコアは、実装された順列でマッピングした後のコードポイントの合計です。 例 Pythonで実装された上記の順列をとると仮定します。 def …

6
コードゴルフ最高の順列
チャレンジ 整数n≥4が与えられた場合、2つの連続した整数が互いに隣接しないという性質を持つ整数[0、n-1]の順列を出力します。順列の値は、すべてのインデックスのpi合計です。abs(pi[i] - i)i 例 (1, 3, 0, 2) 価値がある 6 (0, 2, 4, 1, 3) 価値がある 6 (0, 2, 4, 1, 3, 5) 価値がある 6 (0, 2, 4, 1, 5, 3, 6) 価値がある 8 回答のスコア 回答のスコアは、順列の値の合計にn = 4 .. 14コードが使用するバイト数を加えたものです。スコアが低いほど優れています。コードは、これらのすべての値に対して有効な出力を提供する必要がありますn。 マシン上で提出を完了できる必要があります。 同点の場合、関連するスコアをもたらした最後の編集の時間が決定者になります。 これは同じ問題ではありませんこの1? リンクされた質問への回答は、置換の価値を最適化する努力をしないため、この質問に対して競争力がありません。たとえば、ほとんどの回答で与えられn=10た順列[1, 3, 5, 7, 9, 0, …

8
乱れた再配置
あなたの仕事は、行に分割される(改行文字で分割される)ときに、行のすべての配置が1からnの間の異なる数を出力するようにコンピュータープログラムを書くことです!(nは行の総数です)。2つの異なる配置で数値を出力することはできません。すべての配置でこの範囲の数値を出力する必要があります。nがあるので!プログラムの行を配置する方法。これは、各番号が1回の再配置で出力されることを意味します。 たとえば、Pythonプログラム print 1;""" print 2;""" 2つの取り決めがあります print 1;""" print 2;""" そして print 2;""" print 1;""" 最初の出力1と2番目の出力2。 使用している言語の標準である出力形式を使用できます。なんらかのボイラープレートを想定してはいけません。言語が主張している形式を回避する必要がある場合、この課題はより興味深いと思います。 得点 スコアはプログラムの行数になり、スコアが高いほど良くなります。あなたは、出力番号に選択することが0にn個!-1あなたが好きならば。

11
大文字と小文字の一致検索
3つの入力、テキストの文字列T、置換する文字列、F; そして、それらを置き換える文字列R。Tと同じ(大文字と小文字を区別しない)文字を持つの各部分文字列について、の文字でF置き換えますR。ただし、元のテキストと同じ大文字小文字を使用してください。 より多くの文字が含まれているR場合F、余分な文字は大文字と小文字を区別する必要がありRます。に数字または記号がFある場合、対応する文字はRの大文字小文字を保持する必要がありRます。Fに表示されるとは限りませんT。 すべてのテキストが印刷可能なASCII範囲にあると想定できます。 例 "Text input", "text", "test" -> "Test input" "tHiS Is a PiEcE oF tExT", "is", "abcde" -> "tHaBcde Abcde a PiEcE oF tExT" "The birch canoe slid on the smooth planks", "o", " OH MY " -> "The birch can OH MY e slid OH MY …
14 code-golf  string  code-golf  string  ascii-art  alphabet  code-golf  number  sequence  counting  code-golf  sequence  counting  code-golf  quine  source-layout  code-golf  string  code-golf  decision-problem  game  code-golf  string  quine  source-layout  subsequence  code-golf  quine  code-golf  array-manipulation  integer  code-golf  ascii-art  code-golf  sequence  integer  code-golf  kolmogorov-complexity  code-golf  array-manipulation  integer  code-golf  number  array-manipulation  integer  code-golf  string  number  integer  code-golf  string  ascii-art  code-challenge  test-battery  expression-building  source-layout  printable-ascii  code-bowling  code-golf  number  code-golf  number  string  binary  code-golf  matrix  conversion  code-golf  number  arithmetic 

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