タグ付けされた質問 「kolmogorov-complexity」

コルモゴロフの複雑さは、非公式には、文字列や画像などの定数オブジェクトを記述または生成するために必要なコードの量です。このカテゴリにチャレンジを投稿するときは、既存のチャレンジに何か新しいものを追加してください。

30
ASCII Sunを拡張する
(STDIN /コマンドラインを介して)負でない整数Nを取り込むプログラムを作成します。 Nが0の場合、プログラムは印刷する必要がありますO(ゼロではなく大文字です)。 Nが1の場合、プログラムは印刷する必要があります \|/ -O- /|\ Nが2の場合、プログラムは印刷する必要があります \ | / \|/ --O-- /|\ / | \ Nが3の場合、プログラムは印刷する必要があります \ | / \ | / \|/ ---O--- /|\ / | \ / | \ Nが大きい場合、このパターンはまったく同じ方法で続きます。「日」の8線のそれぞれが適切なのNで作られるべき-、|、/、または\文字。 詳細 プログラムの代わりに、整数を取る関数を書くことができます。この関数は、太陽のデザインを通常どおり印刷するか、文字列として返す必要があります。 あなたはどちらか 末尾のスペースがまったくない、または 末尾スペースが十分にあるため、パターンは完全な(2N + 1)*(2N + 1)の長方形になります。 任意またはすべてのNの出力には、オプションで末尾の改行を含めることができます。 得点 バイト単位の最短コードが優先されます。

21
それらすべてを支配する一つの環。それらすべてを含む1つの文字列
目的:厳密に1000未満のすべての正の整数を含む文字列を出力します。 明白な答えは、それらのすべてを連結することであり、2890文字の文字列を作成します(manatworkに感謝)。この種の簡単な答えを避けるには、文字列の長さは1500文字未満でなければなりません。1200文字の文字列を出力する簡単なJavaコードを次に示します。 import org.junit.Test; import java.util.ArrayList; import java.util.List; import java.util.TreeSet; import static org.junit.Assert.assertTrue; /** * Created with IntelliJ IDEA. * User: fab * Date: 05/11/13 * Time: 09:53 * To change this template use File | Settings | File Templates. */ public class AStringToContainThemAll { @Test public void testsubStrings() throws …

30
シェルピンスキーの三角形を描く
シェルピンスキーの三角形は、三角形を取り、高さと幅を1/2に減らし、結果の三角形のコピーを3つ作成し、各三角形が角の他の2つと接触するように配置することで作成されるフラクタルです。以下に示すように、このプロセスが結果の三角形で何度も繰り返され、シェルピンスキー三角形が生成されます。 シェルピンスキーの三角形を生成するプログラムを作成します。実際の三角形を描画するか、ランダムアルゴリズムを使用して画像を生成することにより、パターンを生成する任意の方法を使用できます。出力が上記の最後の図に似ている限り、ピクセル、ASCIIアートなど、必要なものを何でも描画できます。最も少ないキャラクターが勝ちます。

30
私はエンジニアですか?
最近、信号機のタイミングを研究している電気技師は、オレゴン州から自分自身を技師と称したことで500ドルの罰金を科されました。 入力として米国の州を表す2文字の文字列を指定すると、出力は次のようになります。 I am not an engineer州がオレゴンの場合(OR) I am an engineer 州が他の米国の州である場合 What is an engineer? 他の入力が与えられた 出力には先頭の空白が含まれていない場合がありますが、必要に応じて末尾の空白が含まれている場合があります。 入力は常に2つの大文字であると想定できます。 これは、米国の50の州の略語すべてのリストです。 AL, AK, AZ, AR, CA, CO, CT, DE, FL, GA, HI, ID, IL, IN, IA, KS, KY, LA, ME, MD, MA, MI, MN, MS, MO, MT, NE, NV, NH, NJ, …

28
Brain-Flakのサプライズパーティー
この質問は、Brain-Flakの最初の誕生日を祝うために設計された一連のBrain-flak Birthdayチャレンジの一部です。Brain-Flak's Birthdayの詳細については、こちらをご覧ください。 今日はBrain-Flakの最初の誕生日です!だから、サプライズバースデーパーティーにしようと思った。お気に入りの言語で Surprise! Happy Birthday, Brain-Flak! (末尾の空白は許可されます) いつものように、プログラムはゴルフする必要があります。ただし、Brain-Flakプログラムは角かっこで構成されているため、ソース内の角かっこはカウントされません。(キャラクター()[]<>{}は合計バイト数にはカウントされません)、しかし、Brain-Flakを混乱させないようにバランスをとる必要があります。 ルール ここにルールの内訳があります ソースのブラケットはバランスが取れている必要があります。つまり、プログラムの括弧は、次の文法にまたがる必要があります。 S -> SS | (S) | [S] | <S> | {S} | E どこEが空の文字列です。 つまり、バランスの取れた文字列は、2つのバランスの取れた文字列を連結したもの、バランスの取れた文字列を中括弧で囲む、または空の文字列のいずれかです。 プログラムのスコアは、ブラケット以外のバイト数です。 あなたの目標は、選択した言語に関係なくスコアを最小化することです。 標準の規則が適用されるため、完全なプログラムまたは関数を作成できます。 タイの生バイトカウントがタイブレーカーとして機能する場合 確かに、特定の言語(Parenthesis Hell、 Parenthetic、Glypho、Lenguage)にはゼロバイトソリューションがあります。これが簡単な作業ではない言語でうまくゴルフをする方法を見つけてください。

30
ASCIIチェス盤を描きます!
簡単な課題は次のとおりです。チェス盤のこのASCII表現を作成する必要があります。白は大文字で表され、黒は小文字で表されます。空のタイルはで表されます.。完全なボードは次のとおりです。 rnbqkbnr pppppppp ........ ........ ........ ........ PPPPPPPP RNBQKBNR これはkolmogorov-complexityの質問であるため、入力を受け付けない場合があり、ファイルの保存、STDOUTへの印刷、関数からの戻りなど、デフォルトの方法でこのボードを出力する必要があります。あなたはあり必要に応じて1つ末尾の改行を生成します。標準的な抜け穴が適用され、最短のプログラムがバイト単位で! ただし、これは同じ言語での提出物と同等の競争であることを忘れないでください。Javaのような言語がperlのような言語、またはpythやcjamのようなゴルフ言語を打ち負かす可能性は低いですが、Javaの答えが最も短いというのは本当に印象的です!各言語の最短回答を追跡するために、このリーダーボードを使用できます。このリーダーボードは、言語別および全体的な最短提出を表示します。 リーダーボード 回答が表示されるようにするには、次のマークダウンテンプレートを使用して、見出しから回答を開始してください。 # Language Name, N bytes N提出物のサイズはどこですか。スコアを改善する場合、古いスコアを打つことで見出しに残すことができます。例えば: # Ruby, <s>104</s> <s>101</s> 96 bytes ヘッダーに複数の数字を含める場合(たとえば、スコアが2つのファイルの合計であるか、インタープリターフラグペナルティーを個別にリストする場合)、実際のスコアがヘッダーの最後の数字であることを確認します。 # Perl, 43 + 2 (-p flag) = 45 bytes 言語名をリンクにして、リーダーボードスニペットに表示することもできます。 # [><>](http://esolangs.org/wiki/Fish), 121 bytes コードスニペットを表示 var QUESTION_ID=95745,OVERRIDE_USER=31716;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 …

30
StringgnirtSStringgnirtSStringgnirtS
これは比較的簡単なチャレンジです。 長さNの文字列が与えられると、文字列を前方に、次に後方に、次に前方に、次に後方に...などN回出力します。たとえば、入力が Hello! 出力する必要があります: Hello!!olleHHello!!olleHHello!!olleH オプションで、末尾の改行を1つ出力することもできます。 あなたの提出物は、完全なプログラムまたは機能のいずれかである可能性があり、任意の合理的な形式で入力および出力を行うことができます。たとえば、STDIN / STDOUT、関数の引数と戻り値、ファイルなどからIOを取得できます。入力文字列は空ではなく、印刷可能なASCIIのみを含むと安全に想定できます。新しい文字列を1行で出力する必要があります。したがって、たとえば、最後の例の出力が Hello! !olleH Hello! !olleH Hello! !olleH これは有効な解決策ではありません! 以下に、さらにいくつかのテストケースを示します。 Input: a Output: a Input: abcd Output: abcddcbaabcddcba Input: OK! Output: OK!!KOOK! Input: 4815162342 Output: 4815162342243261518448151623422432615184481516234224326151844815162342243261518448151623422432615184 Input: PPCG Output: PPCGGCPPPPCGGCPP Input: 42 Output: 4224 リーダーボード これはコードゴルフの挑戦なので、標準的な抜け穴は禁止され、バイト単位の最短回答が勝ちます!ただし、これは特定の言語で最短の回答を得るための競争でもあります。Javaの答えがperlや他のゴルフ言語の答えに勝る可能性は低いですが、Javaの最短の答えを持つことは依然として非常に印象的です。したがって、このリーダーボードを使用して両方を表示できます すべての言語の中で最も短い回答、および 個々の言語での最短回答。 回答が表示されるようにするには、次のマークダウンテンプレートを使用して、見出しから回答を開始してください。 # Language Name, N …
42 code-golf  string  code-golf  math  geometry  data-structures  repeated-transformation  code-golf  number  random  code-golf  math  rational-numbers  code-golf  ascii-art  animation  code-golf  ascii-art  number  code-golf  math  number  code-golf  data-structures  code-golf  string  parsing  code-golf  array-manipulation  random  permutations  code-golf  string  code-golf  parsing  code-golf  string  quine  code-golf  string  parsing  comment  code-golf  string  counting  natural-language  code-golf  string  decision-problem  code-golf  math  code-challenge  metagolf  test-battery  code-golf  string  code-golf  math  number  arithmetic  source-layout  code-golf  number  primes  decision-problem  code-golf  math  arithmetic  code-golf  date  code-golf  string  cryptography  code-golf  code-golf  chess  board-game  code-golf  geometry  grid  puzzle-solver  set-partitions  code-golf  number  natural-language  code-golf  ascii-art  code-golf  math  code-golf  string  ascii-art  kolmogorov-complexity  code-golf  string  natural-language  code-golf  game  board-game  tic-tac-toe  code-golf  ascii-art  hexagonal-grid  code-golf  string  comment  code-golf  internet  code-golf  sorting  code-golf  kolmogorov-complexity  unicode  code-golf  tips  code-golf  string  natural-language  code-golf  string  kolmogorov-complexity  source-layout  hello-world  code-golf  string  kolmogorov-complexity  counting  natural-language  code-golf  random  quine  code-golf  string  math  bitwise  code-golf  permutations  code-golf  string  code-golf  arithmetic 

30
1から10までの数字を印刷
これは非常に簡単な挑戦かもしれませんが、まだcode-golfで行われていないことに驚いています。 1から10までのすべての整数を昇順で標準出力に出力します。 出力形式は、言語がサポートするものであれば何でもかまいません。これには、任意の区切り文字(コンマ、セミコロン、改行、これらの組み合わせなど、数字は含まれません)、およびプレフィックスとポストフィックス(など[...])が含まれます。ただし、1〜10以外の数値を出力することはできません。プログラムは入力を受け付けない場合があります。標準の抜け穴は許可されていません。 これはcode-golfなので、バイト単位の最短回答が勝ちです! リーダーボード コードスニペットを表示 var QUESTION_ID=86075,OVERRIDE_USER=42570;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 i=jQuery("#language-template").html(),o=t[c];i=i.replace("{{LANGUAGE}}",o.lang).replace("{{NAME}}",o.user).replace("{{SIZE}}",o.size).replace("{{LINK}}",o.link),i=jQuery(i),jQuery("#languages").append(i)}}var ANSWER_FILTER="!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe",COMMENT_FILTER="!)Q2B_A2kjfAiU78X(md6BoYk",answers=[],answers_hash,answer_ids,answer_page=1,more_answers=!0,comment_page;getAnswers();var SCORE_REG=/<h\d>\s*([^\n,]*[^\s,]),.*?(\d+)(?=[^\n\d<>]*(?:<(?:s>[^\n<>]*<\/s>|[^\n<>]+>)[^\n\d<>]*)*<\/h\d>)/,OVERRIDE_REG=/^Override\s*header:\s*/i; body{text-align:left!important}#answer-list,#language-list{padding:10px;width:290px;float:left}table thead{font-weight:700}table td{padding:5px} <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <link rel="stylesheet" type="text/css" href="//cdn.sstatic.net/codegolf/all.css?v=83c949450c8b"> <div id="answer-list"> <h2>Leaderboard</h2> <table class="answer-list"> <thead> <tr><td></td><td>Author</td><td>Language</td><td>Size</td></tr></thead> <tbody …

18
キャラクター名を印刷する
すべてのUnicode文字には、「LATIN CAPITAL LETTER A」などの名前があります。Unicode文字名には、大文字、空白、マイナス記号のみを含めることができます。 テキストを読み取り、新しい行に各文字の名前を出力するプログラムを作成します。たとえば、入力が「Hello、World!」の場合、出力は次のようになります LATIN CAPITAL LETTER H LATIN SMALL LETTER E LATIN SMALL LETTER L LATIN SMALL LETTER L LATIN SMALL LETTER O COMMA SPACE LATIN CAPITAL LETTER W LATIN SMALL LETTER O LATIN SMALL LETTER R LATIN SMALL LETTER L LATIN SMALL LETTER D EXCLAMATION MARK 入力は、コード内の文字列だけでなく、ファイルまたはユーザー入力から行う必要があります。 …

30
正弦波を印刷(垂直)
端末で垂直にスクロールする連続正弦波を印刷します。プログラムは終了せず、ウェーブを継続的にスクロールする必要があります(何らかの理由で中断されるまでは例外です)。オーバーフローは問題ではないと想定することができます(つまり、カウンターをインクリメントする無限ループ、または無限再帰を使用できます)。 波は次のプロパティを満たしている必要があります。 振幅= 20文字(ピーク振幅) 期間= 60〜65行(含む) 出力は、スペース、改行、 | 出力の各行の後、50msの間一時停止します サンプル出力: | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | …

9
コンパイラの警告とエラーを最も多く生成する最短のプログラムを作成する
挑戦: コンパイル時に、コンパイラの警告とエラーを最も多く生成する非常に短いプログラムを作成します。任意のプログラミング言語で作成できます。 得点: スコアは次の方程式によって決定されますerrors_and_warnings_length/code_length。最高スコアが勝ちます。 例: C#プログラムのclass長さは5文字で、3つの警告を生成します。これは、スコア(1/5)* 3 = 0.6です。 編集: 多少の混乱のため、プログラムは少なくとも1文字の長さが必要です。それ以外の場合は、無限のスコアを取得します。

17
各文字を含む最初の番号
入力としてAからZまでの1文字(JおよびKを除く)が与えられた場合、その文字が書かれた形で含まれている負でない最小の整数を出力します。数字に「and」という単語が含まれることはないと想定します。したがって、「101100」は「100」ではありません。アメリカ(短期)のカウントを想定して、100万が10^610億であると仮定し10^9ます。 a 1000 one thousand b 1000000000 one billion c 1000000000000000000000000000 one octillion d 100 one hundred e 0 zero f 4 four g 8 eight h 3 three i 5 five j k l 11 eleven m 1000000 one million n 1 one o 0 zero p 1000000000000000000000000 one …

30
グッドネスギザゴルフ!
「ギザ番号」は、口語ではティミー番号とも呼ばれ、数字がピラミッドを表す任意の番号です(A134810)。たとえば、「12321」は次のように視覚化できるため、ギザ番号です。 3 2 2 1 1 ただし、ピラミッドの上部に2桁があるため、「123321」のようなものはギザ番号ではありません 33 2 2 1 1 つまり、次のすべての条件が満たされている場合、数字はギザの数字です。 桁数が奇数で、中央の桁が最大です それは回文的(同じ読み取り前方または後方)であり、 数字の前半は厳密に1ずつ増加しています。(それは回文的でなければならないので、これは数字の後半が厳密に1つ減少しなければならないことを意味します) 入力として正の整数を取る完全なプログラムまたは関数を作成し、それがギザ数であるかどうかを判断する必要があります。入力は文字列または数値として取得できます。それは場合であるギザ番号、出力truthy値。それ以外の場合、偽の値。 合計45のギザ数があるので、これらの入力のいずれかが真実の値になるはずです。 1 2 3 4 5 6 7 8 9 121 232 343 454 565 676 787 898 12321 23432 34543 45654 56765 67876 78987 1234321 2345432 3456543 4567654 5678765 6789876 123454321 234565432 …


22
周期表を印刷する
あなたの挑戦は、このテキストを印刷/出力/返送することです: _____ _____ | 1 | | 2 | | H | | He | |_____|_____ _____________________________|_____| | 3 | 4 | | 5 | 6 | 7 | 8 | 9 | 10 | | Li | Be | | B | C | N | O | F …

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