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

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

25
カントールの言いようのない数
話せない数とは、7で割り切れる数、または数字の1つが7である数です。子供向けゲームは、言葉にできない数字のスキップを数えることです 1 2 3 4 5 6 ( ) 8 9 10 11 12 13 ( ) 15 16 ( ) 18 ... Cantorのゲームのバージョンは、シーケンス「1 2 3 4 5 6()8 ...」を上のギャップ()に再帰的に埋めることによって定義されるシーケンスです。 1 2 3 4 5 6 1 8 9 10 11 12 13 2 15 16 3 18 19 20 …

16
文字列のスネーク解除
通常の文字列は次のようになります。 Hello,IAmAStringSnake! そして、ストリングスネークは次のようになります: Hel l rin o,IAmASt g S !ekan あなたのタスク 文字列蛇は危険なので、文字列蛇を入力として受け取り、通常の文字列として出力するプログラムを作成する必要があります。 仕様書 入力は、複数行の文字列または文字列の配列にすることができます。 入力の各行にはスペースが埋め込まれ、長方形のグリッドが形成されます。 ヘビのキャラクターは、ゲームのスネークのように、上下左右に隣接するキャラクターにのみ接続できます。彼らは斜めに行くことはできません。 ヘビのキャラクターはヘビの別の部分に隣接することはなく、接続されたキャラクターのみが隣接します。 文字列の最初の文字は、入力グリッドの左上隅からマンハッタン距離が最短の終了文字です(つまり、ヘビが終了文字から左上に直接移動するために必要な移動の最小数)コーナー)。両端が同じ距離になることはありません。 文字列には、コードポイント33〜126の間のASCII文字を含めることができます(スペースや改行は使用できません)。 文字列の長さは2〜100文字です。 バイト単位の最短コードが優先されます。 テストケース (入力グリッド、その後に出力文字列) Hel l rin o,IAmASt g S !ekan Hello,IAmAStringSnake! ---------- Python Python ---------- P ngPu Code r i z d G o m z n o gram lesA …

27
数を増やす
1年生または2年生では、拡張形式を使用して、数値の場所の値について学ぶことができます。例で説明する方が簡単なので、数値を検討してください123。展開された形式では100 + 20 + 3、として表され、若い心が場所の価値を視覚化するのに役立ちます。それはあなたがそれを言う方法を連想させます:100(プラス)20(プラス)3。 これを、小数点以下の単位の位置を超えて拡張できます。 2.718 => 2 + 0.7 + 0.01 + 0.008 あなたの挑戦は、正の浮動小数点数またはゼロ(あなたの言語が扱えるほど大きいか正確であると想定します;科学表記法ではない)または文字列を展開し、それを印刷/返すプログラムまたは関数を書くことです上で説明したように。 の間にスペース+もゼロも必要ないため、上記の例はのようになります2+.7+.01+.008。101.01 => 100 + 1 + 0.01入力がゼロでない限り、ゼロに等しい値は省略()する必要があります(以下を参照)。 値がそれ以上後、小数点の前にゼロをリードする一つまたは任意の末尾のゼロを持つべきではない(ノーノー者:0060, 0000.2, 30., 30.000, .0400)。入力もこれに適合します。 1年生のアテンションスパンは短いため、コードはできるだけ短くする必要があります。 テストケース 0 => 0 6 => 6 0.99 => 0.9 + 0.09 24601 => 20000 + 4000 + 600 + 1 …

10
韓国の旗を描く
私がこの質問につまずいたとき、私はかつて韓国国旗の建設に関する正確な規則を見たこともあったことを思い出しました。そして、これは全く異なる構造です。 ソース:ウィキペディア それで、あなたは今これの正確な構造を描くことです! 仕様 ベクターまたはラスターグラフィックスを使用して、フラグをファイルまたは画面にレンダリングできます。出力をラスタライズする場合、画像のサイズは450x300ピクセル以上である必要があります。 すべての長さの比率と位置は、次の図に示すとおりである必要があります。 ソース:ウィキペディア 2つの小さな円の中心が対角線と一致することに注意してください。 色については、次のパレットを使用する必要があります。 白:#FFFFFF 黒:#000000 赤:#C60C30 青:#003478 技術的な理由により、描画システムで3:2キャンバスを指定できない場合を除き、黒い境界線を描画しないでください(そうでない場合は、3:2キャンバスを使用し、フラグですべてを埋める必要があります)。境界を追加する必要がある場合、それは任意の太さである可能性があります-フラグは厳密に黒の境界内にあると見なされる必要があります。他の補助線または長さインジケータは描画しないでください。つまり、フラグは最初の画像とまったく同じように表示されるはずです。 得点 これはコードゴルフなので、最短の回答(バイト単位)が勝ちです。 警告の言葉として、既存の圧縮の使用(圧縮GIFの埋め込みなど)は、いくつかの標準的な抜け穴に該当します。

30
標準入力を反転して標準出力に配置する
要件: 無制限の長さの改行/キャリッジリターンを含む標準入力を入力します(システムメモリによってのみ制限されます。つまり、プログラムに固有の制限はありません。) 入力の逆を標準出力に出力します。 例: 入力: Quick brown fox He jumped over the lazy dog 出力: god yzal eht revo depmuj eH xof nworb kciuQ 最短勝。 リーダーボード: var QUESTION_ID=242,OVERRIDE_USER=61563;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"https://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var r=e.size,a=s.size;return r-a});var s={},r=1,a=null,n=1;e.forEach(function(e){e.size!=a&&(n=r),a=e.size,++r;var t=jQuery("#answer-template").html();t=t.replace("{{PLACE}}",n+".").replace("{{NAME}}",e.user).replace("{{LANGUAGE}}",e.language).replace("{{SIZE}}",e.size).replace("{{LINK}}",e.link),t=jQuery(t),jQuery("#answers").append(t);var o=e.language;/<a/.test(o)&&(o=jQuery(o).text()),s[o]=s[o]||{lang:e.language,user:e.user,size:e.size,link:e.link}});var t=[];for(var o in s)s.hasOwnProperty(o)&&t.push(s[o]);t.sort(function(e,s){return e.lang>s.lang?1:e.lang<s.lang?-1:0});for(var c=0;c<t.length;++c){var …
58 code-golf  string 

27
ゴルフあなたの言語の識別子
識別子は、文字列のハッシュ値を表す幾何学模様の小さな画像です。Stack Exchange は、GravatarのIDアイコンを各ユーザーのデフォルトのアバター画像として使用します。 この課題では、Gravatar IDを使用して、ゴルフ用のテキストを生成します。 チャレンジ このスタックスニペット(このJSFiddleの縮小版)を使用すると、文字列を入力して、その文字列のIDの100×100ピクセルの白黒バージョンと、黒用および白1用のテキストバージョンを返すことができます0。 <!-- Click "Run code snippet" --> <div style='text-align:center;'> <input id='str' type='text' size='32' value='Python'> <button type='button' onclick='go()'>Go</button><br><br><input id='type1' name='type' type='radio' value='identicon' checked> <label for='type1'>Identicon</label> <input id='type2' name='type' type='radio' value='monsterid'> <label for='type2'>Monster</label> <input id='type3' name='type' type='radio' value='wavatar'> <label for='type3'>Wavatar</label> <input id='type4' name='type' type='radio' value='retro'> <label …

27
私はあなたを愛しています
「Kinary Heart」というタイトルのXKCD#99は、1と0の単純な画像を示し、一部の数字は赤で表示されます。 赤いハートは肉眼で見えますが、バイナリシーケンスに隠されたメッセージは見えません。すべてのスペースと改行を削除し、バイナリシーケンスを8ビットASCIIコードとして解釈すると、次のメッセージが表示されます。 iloveyOuilOveyouiloveyOuilOveyOuiloveyouilOveyouilOveyOuilOv かわいいね? Pssst ...文字列は純粋な文字列の繰り返しではありません。 あなたの課題は、横21桁、下23桁のこのバイナリイメージを作成することです。各行の各桁の間にスペースが1つ、新しい行ごとに1つの改行が必要です。8で割り切れないeため、最後のビットは文字の先頭にすぎないことに注意してください21*23。これらのビットも正しく必要です。 関数またはプログラムは入力を受け付けません。先頭および末尾のスペースと改行を使用できます。 コードの結果は次のようになります。 0 1 1 0 1 0 0 1 0 1 1 0 1 1 0 0 0 1 1 0 1 1 1 1 0 1 1 1 0 1 1 0 0 1 1 0 0 1 0 1 …

11
新しいサイトのデザイン!
サイトのデザインを変更するユーザースクリプトがない場合(または変更する場合でも)、サイトのデザインがあることに気付くはずです。 (今11月です) それで、祝うために、この設計を遡及的に適用するプログラムを作成しましょう(もちろん、単純化しすぎています)! したがって、最も重要な変更は次のとおりです。 私たちの新しい名前は現在、Code Golf and Coding Challengesです 私たちのサイトはデフォルトの青色ではなくなり、代わりに素敵な濃い緑色になりました したがって、文字列を指定して、変更します。 PPCG に CGCC Programming Puzzles {non-whitespace} Code GolfCode Golf {same-thing} Coding Challenges(例えば、Programming Puzzles + Code Golf、and Code Golf、および& Code Golfすべてに変更されるであろうCode Golf + Coding Challenges、and Coding Challengesと& Coding Challenges。 #abcto #acb(青を緑に、またはその逆に入れ替えます-緑が論理的に青にならないという事実を無視しますが、色のシフトを複雑にしたくない) #abcdef〜#abefcd(上記と同じ) カラースワップの場合、から0-9までの16進数を受け入れる必要があることに注意してくださいa-f。必要な16進数字の大文字小文字を選択できますが、入力から出力まで一貫して同じでなければなりません。 置換では大文字と小文字が区別される場合があり、そうでない場合は、出力の動作を指定してください。 置換は、文字列が単語の境界(の開始を含む)で囲まれている場合にのみ発生します#。言い換えると、指定された各置換は、一致が文字列の端にある場合、または(両側で)英数字以外の文字で区切られている場合にのみ発生します。 標準の抜け穴が適用されます。これはコードとゴルフのチャレンジなので、最短のコードが勝ちます! 例 PPCG -> CGCC …
57 code-golf  string 

30
熱心にストリングをロシア化する
あなたの多くは、ある時点でインターネットでロシアの人々と交流したことがあり、あなたのサブセットは、彼らが自分自身を表現するわずかに奇妙な方法に気づいたかもしれません。 例えば удали игру нуб))) インクルードがどこ)))前回の声明を重視するために添加されて、私はの比率という理論に取り組んできた)が、私はしばしばそれが困難な比率を計算するために見つけ、残りの文字列へのs」は暗黙の強調の量に正比例します多数の乱用にも対処しようとしているので、元々の0から500%の間の熱意の値に対して、結果の文字列がどうあるべきかを計算するのに役立つ最短のコードが欲しい、熱狂的な文字列、これは私の仮説をテストするたびにかさばるスクリプトを入力する必要がないので、これは私の研究を大いに助けます。 したがって、課題: 完全なプログラムまたは関数を作成します。これは、2つの引数、未知の長さの文字列、および数値を、整数形式(0〜500)または10進形式(0〜5、2つの精度)で提供します。 末尾に)「」が付いた元の文字列を返す/表示する 数値は、文字列の長さに対する入力数値の比率として計算されます。 したがって、数値200または2.00が提供された場合、文字列の200%に)'s として接尾辞を付ける必要があります 10進数の状況で丸められた括弧の数は重要ではありません。 印刷可能なASCII文字をサポートするにはスクリプトが必要です。 あなたが選択した1つの入力数値形式のみをサポートする必要があります。 例: "codegolf" 125 = codegolf)))))))))) "codegolf" 75 = codegolf)))))) "noob team omg" 0.5 = noob team omg)))))) "hi!" 4.99 = hi!))))))))))))))) コード例(PowerShell)(10進数入力付き): Function Get-RussianString ([string]$InputStr,[decimal]$Ratio){ $StrLen = $InputStr.Length $SuffixCount = $StrLen * $Ratio $Suffix = …
57 code-golf  string 

30
もう1つのLULと私は外出している
チャレンジの説明 人気のあるストリーミングサイトtwitch.tvの一部のチャンネルでは、人々がチャットでスパムする傾向がある一般的なメッセージは、人々をスパム「LUL」に誘惑します One more LUL and I'm out LULは、ストリームでおかしなことが起こったことを表現するために使用される一般的なエモートです。 すぐにミームがその可能性を示し、コピーパスタのパロディが続いた: One more "One more LUL and I'm out" and I'm out これは、それ自体にネストされた同じメッセージです。負でない整数を指定するとN、N以下のパターンに従って、ネストされたLULパスタ自体を出力します。 標準のコードゴルフ規則が適用され、バイト単位の最短コードが優先されます。 サンプル入出力 0: One more LUL and I'm out 1: One more "One more LUL and I'm out" and I'm out 2: One more "One more "One more …
57 code-golf  string 

30
「DDoouubbllee ssppeeaakk !!」
今日の超簡単な挑戦、またはそれですか? 最近、ダブルスピークについてかなり聞いたように感じますが、コード化可能な方法で定義しましょう... ダブルスピークとは、テキスト文字列内のすべての文字がすぐに繰り返される場合です。例えば: "DDoouubbllee ssppeeaakk!!" ルール 1つの引数、文字列を受け入れるコードを記述します。 この文字列を変更して、すべての文字を複製します。 次に、文字列のダブルスピークバージョンを返します。 これはコードゴルフです。最小バイト数でこれを達成してください。 コードのオンライン通訳へのリンクを含めてください。 入力文字列には、印刷可能なASCII範囲の文字のみが含まれます。参照:http : //www.asciitable.com/mobile/ リーダーボード これは、通常のリーダーボードと言語ごとの勝者の概要の両方を生成するスタックスニペットです。 コードスニペットを表示 var QUESTION_ID=188988; var OVERRIDE_USER=53748; var ANSWER_FILTER="!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe",COMMENT_FILTER="!)Q2B_A2kjfAiU78X(md6BoYk",answers=[],answers_hash,answer_ids,answer_page=1,more_answers=!0,comment_page;function answersUrl(d){return"https://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+d+"&pagesize=100&order=asc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(d,e){return"https://api.stackexchange.com/2.2/answers/"+e.join(";")+"/comments?page="+d+"&pagesize=100&order=asc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(d){answers.push.apply(answers,d.items),answers_hash=[],answer_ids=[],d.items.forEach(function(e){e.comments=[];var f=+e.share_link.match(/\d+/);answer_ids.push(f),answers_hash[f]=e}),d.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(d){d.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),d.has_more?getComments():more_answers?getAnswers():process()}})}getAnswers();var SCORE_REG=function(){var d=String.raw`h\d`,e=String.raw`\-?\d+\.?\d*`,f=String.raw`[^\n<>]*`,g=String.raw`<s>${f}</s>|<strike>${f}</strike>|<del>${f}</del>`,h=String.raw`[^\n\d<>]*`,j=String.raw`<[^\n<>]+>`;return new RegExp(String.raw`<${d}>`+String.raw`\s*([^\n,]*[^\s,]),.*?`+String.raw`(${e})`+String.raw`(?=`+String.raw`${h}`+String.raw`(?:(?:${g}|${j})${h})*`+String.raw`</${d}>`+String.raw`)`)}(),OVERRIDE_REG=/^Override\s*header:\s*/i;function getAuthorName(d){return d.owner.display_name}function process(){var d=[];answers.forEach(function(n){var o=n.body;n.comments.forEach(function(q){OVERRIDE_REG.test(q.body)&&(o="<h1>"+q.body.replace(OVERRIDE_REG,"")+"</h1>")});var p=o.match(SCORE_REG);p&&d.push({user:getAuthorName(n),size:+p[2],language:p[1],link:n.share_link})}),d.sort(function(n,o){var p=n.size,q=o.size;return p-q});var e={},f=1,g=null,h=1;d.forEach(function(n){n.size!=g&&(h=f),g=n.size,++f;var o=jQuery("#answer-template").html();o=o.replace("{{PLACE}}",h+".").replace("{{NAME}}",n.user).replace("{{LANGUAGE}}",n.language).replace("{{SIZE}}",n.size).replace("{{LINK}}",n.link),o=jQuery(o),jQuery("#answers").append(o);var p=n.language;p=jQuery("<i>"+n.language+"</i>").text().toLowerCase(),e[p]=e[p]||{lang:n.language,user:n.user,size:n.size,link:n.link,uniq:p}});var j=[];for(var k in e)e.hasOwnProperty(k)&&j.push(e[k]);j.sort(function(n,o){return n.uniq>o.uniq?1:n.uniq<o.uniq?-1:0});for(var l=0;l<j.length;++l){var m=jQuery("#language-template").html(),k=j[l];m=m.replace("{{LANGUAGE}}",k.lang).replace("{{NAME}}",k.user).replace("{{SIZE}}",k.size).replace("{{LINK}}",k.link),m=jQuery(m),jQuery("#languages").append(m)}} …
57 code-golf  string 

30
ハッカーのロゴを表示する
「ハッカーエンブレム」とも呼ばれる「ハッカーロゴ」を聞いたことがあるかもしれません。次のようになります。 これは、Game of Lifeと呼ばれる数学的シミュレーションのパターンです。グライダーは、移動する最も単純なライフパターンであり、すべてのライフパターンの中で最も瞬時に認識できます。 挑戦 課題は非常に簡単です。ハッカーのロゴを表示します。これは次のように定義されます: 境界線、白い背景、灰色のグリッド線がある3x3グリッド。 GoLグライダーパターンに配置された5つの黒いドット。 他に何もありません。 ルール 黒いドットが記入しなければならない40% - 80% 、個々のグリッドボックスのを。 エンブレムをグラフィック出力で表示しますが、ASCIIアートは表示しません。 出力は少なくとも30x30ピクセルでなければなりません。 出力の色は、グレー、黒、白のみでなければなりません。 グリッド内の各グリッドボックスは同じサイズになります。グリッドは、通常の3x3の正方形になります。 インターネットまたはファイルシステムからロゴを取得することはできません。 プログラムは、空の画面/ウィンドウにロゴを表示します。終了する場合は、正常に終了する必要があります。 「ドット」は必ずしも「円」を意味しないことに注意してください。「ドット」は、グリッドボックスの中央を中心とする1つの幾何学的図形で、1つの表面があります。たとえば、円または正方形はドットとして適格ですが、2つの三角形またはチェッカーボードは適格ではありません。 勝者 これはcode-golfであるため、各言語の最短回答が勝ちます! 回答にプログラムの出力のスクリーンショットを含めてください。

30
ビッグエンディアンまたはリトルエンディアン
LリトルエンディアンアーキテクチャでB実行されるif またはビッグエンディアンアーキテクチャで実行されるif を出力するプログラムまたは関数を作成します。小文字の出力lまたはb許容されます。 入力はありません。 得点はコードゴルフであるため、バイト数が最も少ないコードが勝ちます。 編集: 以下のコメントに従って、エントリはどちらのアーキテクチャでも実行できる必要があることを明確にしています。 これが影響する答えは1つだけであり、その答えはこれが事実であることを明確に示していると思います。
57 code-golf 

27
進行中のクラッキング
これらのブルートフォースプログラムがパスワードを解読することを覚えていますか?より正確には、ある時点で、最初のn個の文字が固定され(それらは正常に推測された)、残りの文字のすべての可能な文字がテストされています。おそらく映画や、派手なインターフェイスが好きな人が書いたソフトウェアで見たことがあるでしょう。 がっかりして申し訳ありませんが、パスワードを解読するプログラムは作成しません。素敵な出力を再現するためのプログラムのみを作成します。 チャレンジ 印刷可能なascii文字を含むが改行を含まない文字列(asciiコード32〜126またはregexに一致^[ -~]{2,}$)を指定すると、次の規則に従って出力を印刷します。 時点t=n secondsで、n印刷されるn最初の文字は入力文字列の最初の文字です。 n固定文字の後に、ランダムな文字列(ユニコード範囲 から~(コード32から126)まで一様に擬似ランダムに選択された)で形成された文字列を追加して、最初の文字の長さの文字列を形成する必要があります。 少なくとも毎秒20行を出力する必要があります。各行のn最初の文字は同じですが、ランダムな終わりが異なります。 おそらく、あなたが何をすべきかはまだ明確ではないので、例を見てみましょう。 例 読みやすくするために、最小20行ではなく、1秒ごとに5行のみを印刷します。 入力を考慮してくださいabcde。 最初の1秒間、有効な出力は次のようなものになります(完全にランダム)。 dGuT4 S!jkN "gQ>[ TU3! *fAjV すると、t=1次のすべての文字列aの最初の文字は(入力の最初の文字)になります。 a);jD aHv^p aqw5* a|.?: a{gbK これでt=2、最初の2文字は次のようになりますab。 abTJ" ab\ e ab3T# abYWS ab"#< これでt=3、最初の3文字は次のようになりますabc。 abcvW abc3G abc(g abc{@ abc@4 これでt=4、最初の4文字は次のようになりますabcd。 abcdD abcdv abcdj abcd$ abcd6 最後にt=5、入力を出力します(一度だけ): abcde いくつかの精度 秒に向かって言語の精度を気にする必要はありません(つまり、アルゴリズムは正しいが、システム/言語の精度が不足している場合は問題ありません)。 最初の1秒は1秒より短くすることができます(つまり、1秒の間にプログラムを起動した場合、最初の1秒は現在の秒の終わりまでの残り時間になります)。別の言い方をすれば、出力の印刷を開始するために新しい秒の開始を待つ必要はありません。 …

30
アスタリスクの三角形を描く
プログラミング101のタスクに触発されたタスクは、あまりにも簡単ではないか、重複していることを願っています(このようなものを検索するのは難しいです)。 入力: 正の整数n >= 1。 出力: n アスタリスクの行。すべての新しい行には、前の行よりも1つ多くアスタリスクがあり、最初の行には1つのアスタリスクが付いています。 一般的なルール: これはコードゴルフなので、バイト単位の最短回答が勝ちです。 このコースはC ++で教えられているので、C ++で解決策を見たいと思っています。 テストケース(n = 5): * ** *** **** *****

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