タグ付けされた質問 「brainfuck」

この課題は、BF言語に関連しています。回答が特定の言語であることが必要な課題は、一般的に推奨されないことに注意してください。

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 

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の数値を保持できる)があると仮定しましょう。また、ラッピングなし:セルがオーバーフローすると、マシンは自己破壊します!

5
2つのBrainfuckプログラムを作成する
2つのbrainfuckコードスニペットAとを指定して、s結果の入力で実行した場合と同じ動作をするBいくつかのbrainfuckコードCを出力します。に与えられたかのように、以下の仮定に一致するすべての入力に対して機能する必要があることに注意してください。BACA あなたは仮定することができます: 有限入力。 AとBの両方が停止します。 EOFは常に0または常に-1です。 細胞の残留を一貫して許可または禁止する 無制限のテープ(それ以外の場合、要件が不可能な場合があります) 一貫して8ビットのラッピングまたは無制限の整数 EOFを表すバイトを含むストリーム(AまたはBの入力または出力) コードAおよびBには、Cに表示される可能性のある文字を含めることができます。 +-[]<>,. 例(EOF = 0) A = ,[..,] B = ,[...,] C = ,[......,] A = >,[>,]<[.<] B = ,[...,] C = >>>>,[[-<+<+<+>>>]>>>,]<<<<[.<] A = >,[>,]<[.<] B = ,[...,] C = >,[>,]<[...<] A = ,. B = ,. C = ,>,[,]<. …

1
画像を脳化する
前書き Braincopterは、Brainf ***プログラムをイメージとしてエンコードする難解なBrainf ***派生物です。2D言語として、2つの追加コマンドを使用します。命令ポインター(最初は右向き)を時計回りと反時計回りに回転させます。Braincopterは、と非常に類似しているBrainloller代わりに異なるコマンドとして異なる色を使用することはなく、各画素のRGB値に基づいてコマンドを計算することを除いて、。 Braincopterは、式N = (65536 * R + 256 * G + B) % 11に基づいて各ピクセルのコマンドを計算し Nます。ここで、はコマンド番号です。コマンド番号からBrainf ***コマンドへのマッピングは次のとおりです。 0 > 1 < 2 + 3 - 4 . 5 , 6 [ 7 ] 8 rotate instruction pointer to the right (clockwise) 9 rotate instruction pointer to the left …

3
ランダム化されたBrainfuckコンパイラ
Joeは平均的なBF開発者です。彼は上司から電話を受けたときに、リポジトリへのコードの変更をチェックインしようとしています。「ジョー!新しいクライアントのマシンが壊れています!ブレインファックインタープリターは、プログラムの実行前にすべてのセルをランダムな値に設定します。修正する時間がないので、コードで処理する必要があります。」ジョーはそれについてはあまり考えていません。上司が再び彼に割り込んだときに、最初の100万個のセルをゼロに設定するプログラムを書こうとしています。できるだけ小さくしてください。」今、あなたは貧しいジョーを助けなければなりません! 仕様書 あなたは入力としていくつかの有効なbrainfuckコードを取得します プログラムはコードを変更して、ランダム化されたbrainfuckインタープリターで機能するようにします つまり、プログラムを実行する前に、セルを任意の値に設定できます。 新しいプログラムは、初期条件に関係なくまったく同じ動作をする必要があります。 インタープリターは、ラッピングを含む最大セル値が255で、テープの長さが無限になります。 得点 あなたのスコアは、10回のバイト単位でのコンパイラのサイズに加えて、テストケースのサイズの合計。最も低いスコアが勝つことは明らかです。テストケースの最適化を緩和するために、疑わしい場合はテストケースを変更する権利を留保しており、おそらく勝者を選ぶ前に変更します。 テストケース (私はesolangsページとこのWeb ページからこれらを入手しました:http : //www.hevanet.com/cristofd/brainfuck/)。最後のテストケースについては@Sparrにも感謝します。 こんにちは世界: ++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++. 逆入力: >,[>,]<[.<] 2の累乗(無限ストリーム): >++++++++++>>+<+[[+++++[>++++++++<-]>.<++++++[>--------<-]+<<]>.>[->[ <++>-[<++>-[<++>-[<++>-[<-------->>[-]++<-[<++>-]]]]]]<[>+<-]+>>]<<] 10000未満の正方形: ++++[>+++++<-]>[<+++++>-]+<+[>[>+>+<<-]++>>[<<+>>-]>>>[-]++>[-]+>>>+[[-]++++++>>>]<<<[[<++++++++<++>>-]+<.<[>----<-]<]<<[>>>>>[>>>[-]+++++++++<[>-<-]+++++++++>[-[<->-]+[<<<]]<[>+<-]>]<<-]<<-] フィボナッチストリーム: >++++++++++>+>+[[+++++[>++++++++<-]>.<++++++[>--------<-]+<<<]>.>>[[-]<[>+<-]>>[<<+>+>-]<[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>[-]>+>+<<<-[>+<-]]]]]]]]]]]+>>>]<<<] 入力までのASCIIシーケンス:(,[.[>+<-]>-]これは入力に基づいてさまざまなセル番号を必要とします)

2
パウダートイでのゴルフのヒント
これを楽しんでください。パウダートイは、特にフィルトロジックに関して、ゴルフにとって興味深い挑戦です。 TPTが課題となるのは、問題に取り組むための多くの方法です。 Should I use Cellular Automaton rules, SWCH logic, Filt logic, subframe filt logic, and/or wall logic? そのため、TPTゴルフのヒントの場所は非常に役立つので、この質問のスレッドを作成しました。 このスレッドは、多くの略語を使用する可能性があります。それらの多くはゲーム内の要素になるため、Wikiでそれらを検索すると、それらが何であるかなど、それらに関する多くの情報が表示されます。 以下は、このスレッドに表示される可能性が最も高いもので、検索に行きたくない人のために、ゲーム内の説明(およびフルネーム)が添付されています。 SPRK:電気。TPTのすべての電子機器の基礎は、ワイヤーおよびその他の導電性要素に沿って移動します。 FILT:フィルター。フォトンをフィルターし、色を変更します。 ARAY:レイエミッター。レイは、衝突したときにポイントを作成します。 BTRY:バッテリー。無限の電力を生成します。 DRAY:複製光線。その前にあるパーティクルのラインを複製します。 CRAY:パーティクルレイエミッタ。tmpによって設定された範囲で、ctypeによって設定されたパーティクルのビームを作成します。 SWCH:スイッチ。スイッチを入れたときにのみ導通します。(PSCNはオン、NSCNはオフ) すべての要素のリスト
9 code-golf  tips  the-powder-toy  code-golf  number  array-manipulation  integer  code-golf  string  decision-problem  boggle  code-golf  array-manipulation  average  code-golf  math  code-golf  decision-problem  restricted-source  code-golf  code-golf  math  primes  code-golf  random  code-golf  tips  perl  code-golf  string  parsing  code-golf  math  number  decision-problem  code-golf  math  number  code-golf  string  alphabet  code-golf  math  geometry  code-golf  interpreter  brainfuck  code-golf  code-golf  decision-problem  boggle  code-golf  math  number  sequence  code-golf  math  code-golf  ascii-art  code-challenge  restricted-source  quine  code-golf  math  decision-problem  number-theory  primes  code-golf  ascii-art  code-golf  integer  graph-theory  chess  code-golf  math  interpreter  code-golf  code-golf  code-golf  ascii-art  code-golf  arithmetic  number-theory  code-golf  string  kolmogorov-complexity  code-golf  string  decision-problem  code-golf  primes  factoring  encode  code-golf  decision-problem  code-golf  geometry  grid  code-golf  quine  code-golf  matrix  code-golf  matrix  code-golf  code-golf  number  array-manipulation  code-golf  array-manipulation  sorting  code-golf  matrix  code-golf  brain-flak 

5
TwoMegaを解釈する
この課題では、あなたがのために通訳書き込みます2 Ω(として転写TwoMega)、ゆるくに基づく言語brainfuck無限次元の収納スペースとを。 言語 2 Ωは、状態の3枚が含まれています。 テープ全て0に初期化ビットの無限のリストである、それは、左端の要素、ない右端の要素を有しています。 メモリポインタテープの要素のインデックスである非負整数です。上位のメモリポインタは、さらに右側のテープセルを指します。0のメモリポインタは、左端の要素を参照します。メモリポインタは0に初期化されます。 ハイパーキューブ概念的であり、∞ハイパーキューブの幅はわずか2細胞にすべての次元で結合したが、寸法の無限の数を意味している0に初期化ビットを含む各々がセルの次元「ボックス」、細胞は数えられない。 ハイパーキューブへのインデックスは、ハイパーキューブ内のセルを参照するビットの無限リストです(ビットの有限リストを使用して有限次元のハイパーキューブを参照するのと同じ方法で)。テープはビットの無限リストであるため、テープ全体は常にハイパーキューブの要素を参照します。この要素は参照対象と呼ばれます。 2 Ωは、 7種類の文字に意味を与えます: < メモリポインタを1だけデクリメントします。0未満にデクリメントすることは未定義の動作であるため、処理する必要はありません。 > メモリポインタを1だけインクリメントします。 ! リファレントでビットを反転します。 . リファレントでビットを出力します。 ^テープ上のメモリポインターが指すセルのビットを、参照先のビットの逆に置き換えます。 [x]xリファレントのビットが1である限り、コードを実行します。 チャレンジ あなたの仕事は、文字列を入力として受け取り、その入力を2Ωプログラムとして実行するプログラムを作成することです。 これはcode-golfなので、有効な最短の回答(バイト単位)が優先されます。 ノート プログラムは文字のみで構成され、適切にネストされる<>!.^[]と想定でき[]ます。 インタプリタは、システムで利用可能なメモリによってのみ制限されるべきです。サンプルプログラムを妥当な時間で実行できるはずです。 サンプルプログラム 印刷1: !. 印刷010: .!.!. 永久に0を印刷します。 ![!.!] 永遠に0を出力します!。 [.]![!.!]

2
TinyBFからBrainf ***へのコンバーター
Brainf ***からTinyBFへのコンバーターはありますが、その逆はありません。 ルール: インタープリターは有効なTinyBFプログラムを1行で取得する必要があり、対応するBrainF ***プログラムを1行で出力し、オプションで末尾の空白/改行を付加する必要があります。先頭の空白は許可されていません 入力には、4つのTinyBF文字のいずれでもない文字が含まれている場合と含まれていない場合があります。その場合は、これらの文字をすべて同じ場所に印刷する必要があります。 私が使用するいくつかのあいまいな基準に基づいて、(冗談ではなく)4月1日に回答が受け入れられます(jk;)次のルールで不正を行わない最短のプログラムを受け入れます) 0バイトまたは1バイトのソリューションはありません。これは、この目的のためだけのプログラミング言語を作成した(または存在する)場合、面白味を失うためです) テストケース 入力1:+++++>+++++=>=|>>+=>>+|=>|>+=>+|(5(バイト1)+ 5(バイト2)= 10(バイト3)を計算)) 出力1:+++++>+++++<[>>+<<-]>[>+<-] 入力2:(+++>++++Hi+++:P+=>=|>|>+>+=>>&&+|=>>|=>>=+!!>>=+|>>>+|計算3(バイト1)* 8(バイト2)= 24(バイト3))出力2:+++>++++Hi+++:P+<[>[>+>+<<&&-]>>[<<+!!>>-]<<<-]

4
ブレインの停止問題を部分的に解決する***
停止問題を解決するには、プログラムの説明が表示され、プログラムが終了するかどうかを判断する必要があります。すべてのプログラムに対してこれを行うことはできません。(brainf ***のような)プログラムの場合: > それは明らかに停止し、次のようなプログラムの場合: +[] それは明らかにしません。あなたの課題は、可能な限り多くのプログラムの停止問題を「解決」することです。これらのプログラムは.またはを使用,せず、入力も出力もありません。プログラムの説明が表示され、「停止」、「停止しない」、または「不明」のいずれかを出力する必要があります。プログラムが「停止」または「停止しない」を出力する場合、入力プログラムは解決されています。ここにいくつかの要件があります。 それは少なくとも無限の量のプログラムを解かなければならない。 それが解決するすべてのプログラムについて、そのソリューションは正しい必要があります。 上記の3つの選択肢から1つだけを出力できます。 実行中のコンピュータには無限の時間とメモリがあるため、XKCD 1266は機能しません(テープは無制限です)。 外部リソースはありません。 停止の問題を実際に解決できるプログラミング言語を使用することはできません。 プログラムである文字列を受け取り、必要に応じてその抽象構文ツリーを生成する非コード側プログラムがある場合があります。これは実際にはスコアリングではありませんが、あるプログラムが別のプログラムよりも優れているかどうかを判断する方法に注意してください。 プログラムAがBが解決しない無限の数のプログラムを解決するが、Bが解決するプログラムが有限であるか、Aが解決しない場合、Aが自動的に勝ちます。 それ以外の場合は、文字数が最も少ないプログラムが優先されます。空白やコメントは数えないので、コードを難読化しないでください。 ヒント:タイマーは機能しません。いつでもTと指定されたマシンにはNがあり、それより長いプログラムはすべてT時間以上かかる必要があることがわかります。これは、タイマーは有限数のプログラムの解を達成することしかできないことを意味し、上記からわかるように、有限数のプログラムを解いても役に立ちません。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.