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

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

3
すべてのアームストロング番号
アームストロング数(別名、完全な数、または自己陶酔的な数)は、そのn桁の累乗の合計に等しいn数です。ここで、は数字の桁数です。 たとえば、153持っている3数字を、および153 = 1^3 + 5^3 + 3^3ので、153アームストロングの番号です。 たとえば、8208持っている4数字を、および8208 = 8^4 + 2^4 + 0^4 + 8^4ので、8208アームストロングの番号です。 2013年11月14日、数値がアームストロングの数値であるかどうかをテストしました。 ここで、すべてのアームストロング番号をリストしたいと思います。88アームストロングの数字は正確にあります: 1 2 3 4 5 6 7 8 9 153 370 371 407 1634 8208 9474 54748 92727 93084 548834 1741725 4210818 9800817 9926315 24678050 24678051 88593477 146511208 472335975 534494836 912985153 …

5
AdamNタイルを印刷する
Adam7は、PNGなどのラスターイメージ用のインターレースアルゴリズムです。Adam M. Costelloによって発明されたため、「Adam7」アルゴリズムと呼ばれ、特定のパターンを7回たどることによって生成されます。コードゴルフを本当に楽しくするAdam7アルゴリズムの素晴らしい点の1つは、パターンが奇数である限り、任意の回数だけ繰り返すことができることです。1996年にPNG標準が開発されたとき、9回の反復は複雑すぎ、5回の反復は効率的ではなかったため、7回の反復で十分であると見なされていました。 タイルの最初の反復は次のとおりです。 a ものすごく単純。これは「Adam1」タイルです。次の反復である「Adam3」タイルに到達する方法を次に示します。 最後のタイルがだったので1x1、高さと幅が2倍になり、次のタイルはになります2x2。まず、左上隅の「a」から始めます。 a- -- ステップ2、このパターンを右にコピーし、現在の文字を1つ増やします。 ab -- ステップ3、ステップ2と同じですが、右ではなく下にコピーします。 ab cc ブーム。「Adam3」タイル。「Adam5」も実行してみましょう。実際にアルゴリズムがどのように機能するかを確認できます。このタイルもまた2倍の大きさになり4x4ます。繰り返しますが、a左上隅のから始めます。 a--- ---- ---- ---- このパターンを2倍にし、文字を増やして、右に移動します。 a-b- ---- ---- ---- 繰り返しますが、今回はダウンします。 a-b- ---- c-c- ---- 繰り返しますが、今回は右側です。 adbd ---- cdcd ---- 繰り返しますが、今回はダウンします。 adbd eeee cdcd eeee これが「Adam5」タイルです。Adam7タイルのASCII表現は次のとおりです。 afdfbfdf gggggggg efefefef gggggggg cfdfcfdf gggggggg efefefef gggggggg そして、ここに、Adam7タイルの各ステップの楽しいアニメーションがあります(ただし、いくつかのタイルを並べて実行します)。 …


1
ジェイソンが彼のJSONをフォーマットするのを手伝ってください
Jasonには大きなJSONがありますが、判読できないため、彼はそれをきれいにする必要があります。 フォーマット仕様 JSONには4つの異なるタイプがあります。 数字; ただ0-9 ストリング; で"エスケープされた二重引用符付き文字列\ 配列; で区切られ[]、アイテムはで区切られ,、アイテムはこれらのタイプのいずれかになります オブジェクト; で区切られ{}、formatはkey: valuekeyが文字列で、valueはこれらのタイプのいずれかです 間隔 配列には、項目間のコンマの後にちょうど1つのスペースが必要です。 オブジェクトには、キーと値の間にスペースが1つだけあるはずです。 : くぼみ 各ネストレベルは、以前よりも2インデントされます 各オブジェクトのキーと値のペアは、常に独自の行にあります。オブジェクトはインデントされます 配列に別の配列またはオブジェクトが含まれる場合、配列は複数行にわたってインデントされます。それ以外の場合、配列は1行のままです ルール このタスクを単純化するビルトインは許可されていません。 いつものように、標準的な抜け穴は許可されていません 例 [1,2,3] [1, 2, 3] {"a":1,"b":4} { "a": 1, "b": 4 } "foo" "foo" 56 56 {"a":[{"b":1,"c":"foo"},{"d":[2,3,4,1], "a":["abc","def",{"d":{"f":[3,4]}}]}]} { "a": [ { "b": 1, "c": "foo" }, …
11 code-golf  string  json  code-golf  number  code-golf  image-processing  code-golf  string  code-golf  number  sequence  arithmetic  number-theory  code-golf  string  code-golf  string  counting  code-golf  ascii-art  code-golf  math  code-golf  tips  code-golf  string  code-golf  grid  graph-theory  code-golf  parsing  interpreter  brainfuck  code-golf  math  arithmetic  number-theory  programming-puzzle  c#  code-golf  dominoes  code-golf  tips  code-golf  string  grid  crossword  code-golf  string  code-golf  kolmogorov-complexity  code-golf  number  sequence  code-golf  string  math  number  number-theory  primes  fastest-code  code-golf  number  code-golf  string  code-golf  ascii-art  number  kolmogorov-complexity  code-golf  string  grid 

12
イーニー、ミーニー、ミニー、モー
前書き 幼年期の歌Eeny、meeny、miny、moeは、タグを再生するときに誰が「それ」だったかを選択するためによく使用されました。全員が輪になって、ランダムに選択された1人を指さします。彼らは歌うでしょう: Eeny、meeny、miny、moe、 つま先でトラを捕まえます。 彼が大声で叫ぶなら、彼を手放しなさい、イーニー、ミーニー、ミニー、モー 。 彼らはそれぞれの言葉を歌いながら、円の中の次の人を指さしました。最後の「萌え」が歌われたときに指さされるのは「それ」だろう。子どもたちはすぐに立ち上がって散ります。 ゴール 入力、子の数、および指示されたときに歌われた単語をリストする、最短のプログラムをバイト単位で実装します。 勝者は1週間で選出されます。 入力 STDINから、単一の正の整数、子の数。これは、歌の単語数よりも多い場合があります。 出力 STDOUTに、各行が子を表し、ポイントされている間に歌われる単語を含むリストを書き込みます。子が多すぎる場合、空の行が省略される場合があります。 必要条件 常に最初の子供から始めてください。 句読点なしで単語を表示します。 最後の「萌え」は「萌え!」として強調されるべきです。句読点を含む。 例 入力 3 出力 Eeny moe tiger toe hollers go miny meeny Catch by If let Eeny MOE! miny a the he him meeny 入力 7 出力 Eeny by him meeny the …

4
BrainfuckでURLをエンコードする
この質問に触発されて、今日の目標はbrainfuckでURLをエンコードすることです。 ブラウザがハッキングされました!ロケーションバーはブレインファックインタープリターに変わりました。URLをブレインファックプログラムに変えるプログラムが必要です。私のコンピューターも非常に遅いので、brainfuckプログラムが小さければ良いです。 ああ、私の作業中のタブは1つしか開いていません。そのため、プログラムはツイートでのみ送信できます。 入力として文字列を受け取り、brainfuckプログラムを出力する任意の言語で、ツイート(140文字)に適合するプログラムを作成します。 このBrainfuckプログラムは、入力なしで実行され、出力を生成します。 この出力は、Google Chromeのロケーションバーに挿入され、実行されます。 Google Chromeの動作が#1から入力文字列を入力することで得られる動作と同じ場合、ソリューションは有効です。URL短縮サービスによるリダイレクトは異なる動作と見なされます-少なくとも同じドメインにとどまります。 Brainfuckインタープリターには、各セルに無限精度の符号付き整数があり、セルの数に制限がないと仮定できます。 スコアは、次のURLセットをエンコードするために生成されたBrainfuckプログラムの長さの合計によって決まります。 https://www.google.com/ /codegolf/47895/ http://www.golfscript.com/golfscript/examples.html http://en.wikipedia.org/wiki/Percent-encoding ftp://ftp.freebsd.org/pub/FreeBSD/ https://github.com/isaacg1/pyth/blob/master/doc.txt#L92 http://ftp.gnu.org/non-gnu/nethack/nethack-3.4.0.tar.gz.back-RSN.README 最小スコアが勝ちます。

8
指定された長さの文字列を出力するBrainf_ckプログラムを生成します
あなたの友人は、独特のロックシステムを備えた金庫に侵入しようとしています。特定の場所で一定数の穏やかなノックが必要です。あなたの友人は番号(1〜99999の範囲)を発見し、必要なノックを生成するガジェットを所有しています。ただし、ガジェットはBrainfuckインタープリターです!したがって、友人はBrainfuckプログラムをフィードする必要があります。これは、明らかに、可能な限り短くする必要があります(ガジェットのI / Oが遅い)。 あなたの仕事は彼を助けることです!入力として数値を受け入れ、入力を受け付けNず、印刷可能なASCII文字の文字列を出力するBrainfuckプログラムを出力するプログラムまたはサブルーチンを任意の言語で記述します(スペース文字を除く-範囲33のコード... 126)の長さN。 例:入力の10場合、出力は +++++++++++++++++++++++++++++++++.......... (しかし、短縮できると確信しています!) スコアは、次の値の出力の長さの合計になりますN(これらは乱数です)。 55 68 15 28 841 838 522 846 4898 9004 9363 3810 13230 67175 37231 44701 ああ、あなたはあなたのコード(ジェネレータープログラム)をあなたの友人にTwitterで送信します。140文字以下であることを確認してください! PS Brainfuck言語には多くのバリアントがあります。テープが両方向に無限(または「円形で十分な大きさ」)で、セルに32ビットのint容量(有限で最大99999の数値を保持できる)があると仮定しましょう。また、ラッピングなし:セルがオーバーフローすると、マシンは自己破壊します!

3
99ですべてのASCII文字をゴルフ
99は、チャレンジのために今週初めに発明したプログラミング言語です。99のインタープリターを作成します。(発明されましたが、半ダースのおかげで実装する必要はありませんでした。))完全な言語仕様がその課題にあるため、ここですべてを再投稿することはありません。 では99あなたは、個々の印刷できるASCIIの stdoutに文字を、しかし、言語の制約のため、簡潔できるだけ特定の文字を印刷する方法を必ずしも明確ではありません。 128個のASCII文字のそれぞれについて、入力を一切行わず、その唯一の文字を出力する99プログラムを作成します。これらの回答の一部またはすべてを手作業でコーディングするか、別のプログラムを(好きな言語で)作成して生成することができます。 128 99の各プログラムの文字の合計がスコアです。最も低いスコアが勝ちます。改行は1文字としてカウントされます。 99では、9999出力ASCII文字(奇数サイズの変数は整数を出力)のようなサイズの変数のみを思い出してください。それらの値は9で除算され、mod 128で取得されるため、ASCII文字にマップするために値が特定の範囲内にある必要はありません。たとえば、内部値297、1449、および-855はすべて文字に対応し!ます!。これは、9で割ってmod 128を取得すると、すべて33になり、これがの文字コードであるためです。 99のインタープリターが必要な場合は、MacのPythonの回答をお勧めします。 次の挑戦はもっとインタラクティブになると言ったのは知っていますが、私はまだその課題に取り組んでいます。

12
アルファベットの翼!
あなたの仕事はこの正確なテキストを印刷することです: az za abyz zyba abcxyz zyxcba abcdwxyz zyxwdcba abcdevwxyz zyxwvedcba abcdefuvwxyz zyxwvufedcba abcdefgtuvwxyz zyxwvutgfedcba abcdefghstuvwxyz zyxwvutshgfedcba abcdefghirstuvwxyz zyxwvutsrihgfedcba abcdefghijqrstuvwxyz zyxwvutsrqjihgfedcba abcdefghijkpqrstuvwxyz zyxwvutsrqpkjihgfedcba abcdefghijklopqrstuvwxyz zyxwvutsrqpolkjihgfedcba abcdefghijklmnopqrstuvwxyzyxwvutsrqponmlkjihgfedcba abcdefghijklopqrstuvwxyzyxwvutsrqpolkjihgfedcba abcdefghijkpqrstuvwxyzyxwvutsrqpkjihgfedcba abcdefghijqrstuvwxyzyxwvutsrqjihgfedcba abcdefghirstuvwxyzyxwvutsrihgfedcba abcdefghstuvwxyzyxwvutshgfedcba abcdefgtuvwxyzyxwvutgfedcba abcdefuvwxyzyxwvufedcba abcdevwxyzyxwvedcba abcdwxyzyxwdcba abcxyzyxcba abyzyba aza 以下が許可されます。 行末の末尾のスペースを除外する すべてを小文字ではなく大文字で行う 末尾の改行 これはcode-golfなので、バイト数が最も少ないコードが優先されます。

30
ギリシャ語のアルファベットを印刷してください!
かなり明らかに、ギリシャ語のアルファベットを印刷する必要があります。しかし、少し面白くしたいと思ったので、ひねりがあります。プログラムを引数(何でも)を指定して実行すると、ギリシャ語のアルファベットが小文字で出力されます。 情報 ギリシャ語のアルファベット(大文字): ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ ギリシャ語のアルファベット(小文字): αβγδεζηθικλμνξοπρστυφχψω ルール/要件 各提出物は完全なプログラムでなければなりません。 ギリシャ語のアルファベットを印刷するビルトインは許可されていません 標準の抜け穴が適用されます 表示されている内容を正確に印刷する必要があります。 得点 プログラムはバイトに従ってスコアリングされます。UTF-8以外の文字セットを使用している場合は、指定してください。みんなから最小のバイトを取得するようにしてください、これはコードゴルフです! テストケース ./program ==> ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ ./program 1 ==> αβγδεζηθικλμνξοπρστυφχψω ./program 'lower' ==> αβγδεζηθικλμνξοπρστυφχψω ./program 123897883421 ==> αβγδεζηθικλμνξοπρστυφχψω ./program "" ==> αβγδεζηθικλμνξοπρστυφχψω greek(); ==> ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ greek("blah"); ==> αβγδεζηθικλμνξοπρστυφχψω greek(123); ==> αβγδεζηθικλμνξοπρστυφχψω 提出物 回答が確実に表示されるようにするには、次のMarkdownテンプレートを使用して、見出しから回答を始めてください。 # Language Name, N bytes N提出物のサイズはどこですか。スコアを向上させる場合は、古いスコアを打ち消すことで見出しに残すことができます。例えば: …

4
Pigpen Cipher暗号化
Pigpen Cipher暗号化 あなたの使命は簡単です。入力としてテキストを受け取り、そのテキストのASCII表現をPigpen Cipherに出力するプログラムを書くことです。 入力 ASCIIのみ(Unicodeなし)の文字。少なくとも16384文字と256行を処理できる必要があります。 出力 改行ではないすべての文字を、スペースで、ABCDEFGHIJKLMNOPQRSTUVWXYZまたはabcdefghijklmnopqrstuvwxyzスペースで置き換えます。 大文字と小文字を区別せずに、各文字を暗号化された形式に置き換え(次のセクションを参照)、3行それぞれに末尾のスペースを挿入します。エンコードされた各文字は、ASCIIアートの3 * 3ブロックです。スペースを3 * 3ブロックのスペースに置き換えます。 新しいピッペンラインを開始する新しいラインがない限り、すべてのキャラクターは同じ3行にある必要があります(これらの3行を1つのピッペンラインと呼びます)。ピッペンラインの間の通常のラインは空白のままにします。 暗号 | | | | .| |.| |. --+ for J +-+ for K +-- for L --+ +-+ +-- .| |.| |. --+ for M +-+ for N +-- for O --+ +-+ +-- .| …

25
テニスをしよう2:東西ゲーム
チャレンジがありましょうプレイテニスでダニエル。彼は南北方向に裁判所を置くことを提案します。私の提案は、東西方向にもテニスをするコートを作ることです。 テニスコートを印刷する必要がありますが、機密上の理由により、可能な限り少ないバイト数で印刷する必要があります。 テニスコート ------x------ | | x | | | |--x--| | | | x | | ------x------ 元のルールは次のとおりです。 余分なスペースはありません。 不公平になるため、タブはありません。 1つのオプションの末尾改行が許可されます。 これはcode-golfなので、バイト単位の最短コードが優先されます!

4
平方根の桁ごとの合計の分数の継続
前書き あなたの仕事は、2の平方根と3の平方根の桁ごとの合計の継続分数表現で最初の1000項を生成することです。 つまり、次のリストを正確に作成します(ただし、出力形式は柔軟です)。 [2, 6, 1, 5, 7, 2, 4, 4, 1, 11, 68, 17, 1, 19, 5, 6, 1, 5, 3, 2, 1, 2, 3, 21, 1, 2, 1, 2, 2, 9, 8, 1, 1, 1, 1, 6, 2, 1, 4, 1, 1, 2, 3, 7, 1, 4, 1, …

6
N基底の回文である数
負でない整数が指定された場合n >= 0、x_i >= 3完全にn異なるb基数の回文である整数のシーケンスを永久に出力します2 <= b <= x_i-2。 これは基本的にOEIS A126071の逆で、そのシーケンスのどのインデックスが値を持つかを出力しますn。b = x_i-1, x_i, x_i+1これらのベースの結果は常に同じであるため(値は常にパリンドロームであるか、常にそうでないか)、ベースを無視するように変更したため、少し異なります。また、オフセットが異なります。 x_i>= 3それぞれの結果の最初の項nがA037183になるように、数値に制限されています。 出力形式は柔軟ですが、数値は適切な方法で区切る必要があります。 例: n seq 0 3 4 6 11 19 47 53 79 103 137 139 149 163 167 ... 1 5 7 8 9 12 13 14 22 23 25 29 35 …
10 code-golf  sequence  base-conversion  palindrome  code-golf  array-manipulation  matrix  code-golf  string  ascii-art  code-golf  ascii-art  physics  code-golf  number  sequence  fibonacci  code-golf  ascii-art  packing  code-golf  string  hexadecimal  code-challenge  restricted-source  decision-problem  binary  code-golf  code-golf  code-golf  stack-exchange-api  code-golf  string  parsing  generation  data-structures  code-golf  kolmogorov-complexity  graphical-output  code-golf  array-manipulation  integer  generation  data-structures  code-golf  number  random  probability-theory  king-of-the-hill  java  minesweeper  code-golf  string  kolmogorov-complexity  animation  code-golf  string  code-golf  code-golf  quine  code-golf  internet  code-golf  arithmetic  base-conversion 

4
ASCII六角形リングタイリングを作成する
ASCIIを使用して、六角形のリングタイルのセクションを印刷します。 ここに小さなセクションがあります: /\__/\ /_/ \_\ /\__/\ \__/ /\__/\ /_/ \_\/__\/_/ \_\ \ \__/ /\__/\ \__/ / \/__\/_/ \_\/__\/ /\__/\ \__/ /\__/\ /_/ \_\/__\/_/ \_\ \ \__/ /\__/\ \__/ / \/__\/_/ \_\/__\/ \ \__/ / \/__\/ ここに大きなセクションがあります: \ \__/ /\__/\ \__/ /\__/\ \__/ /\__/\ \__/ /\__/\ \/__\/_/ \_\/__\/_/ \_\/__\/_/ \_\/__\/_/ \_\ …

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