タグ付けされた質問 「ascii-art」

この課題には、テキスト文字をペイントとして使用して画像を作成または解析することが含まれます。通常、これは1963年からのASCII標準で定義された(合計128から)95の印刷可能な文字のみを使用します。

3
グラフ電卓を実装する
電卓に関する多くの質問がありました。ただし、グラフ電卓の実装が関与しているようには見えません。 チャレンジ STDINからの入力として複数の式を取り、それらをSTDOUTにグラフ化する完全なプログラムを作成します。入力の形式は次のとおりf1(x)=x^2-x-1です。があり、fその後に0〜9の数字(両端を含む)が続き(x)=、が続き、グラフ化する式が続きます。プログラムは、入力、グラフ、入力、グラフなどを取得できる必要があります。 これはコードゴルフです。 グラフのX軸の範囲は-5〜5で、解像度は1/2ユニットごとに少なくとも1ポイントである必要があります。Y軸の要件は同じです。これは、最新の計算機と比べて小さな範囲のように見えるかもしれませんが、これを増やすのはささいなことでしょう。グラフには+、整数の形の目盛りが付いた軸が描かれている必要があります。 式は通常の操作順序で評価する必要があります。これらの式には、垂直漸近線/未定義の領域はありません。変数は常にxです。同じ式番号で2つの式が入力された場合、最も古い式が消去され、新しい式に置き換えられます。空の数式はゼロに評価されるはずです。公式は常に1/2の倍数になるとは限らないので、最も近い1/2に丸める必要があります。 数式がグラフ化されるとき、その線は数式の数から形成される必要があります。線が軸と交差する場合、軸は上に描画される必要があります。2本の線が交差する場合、どちらが表示されるかは関係ありません。 入力例 f1(x)=x+1 出力 + 1 | 1 + 1 | 1 + 1 | 1 + 1 |1 + 1| +-+-+-+-+-+-+-+-+-+-+ 1 | 1 + 1 | 1 + 1 | 1 + 1 | 1 + | + 入力 f2(x)=(x^2)^0.25 出力 + …

8
ジミーには新しい靴が必要です!
ジミーは先週、これら すべてのプラットフォーム と ロープで忙しくしており、貧しいジミーには足や足さえありません! あなたの仕事は、複数のジミーを含むストリングを取り、足と靴を与えることです! ジミー文字列の形式で入力を取得する ジミー・ストリング=> /o\ /o\ /o\ とのみ/o\を 含む 入力の各ジミーに次のような足を与えます。 /o\ _/ \_ 次のように、入力されたフローティングヘッドジミー文字列をフィート文字列付きジミーに変換します。 // Input /o\ /o\ /o\ // Output /o\ /o\ /o\ _/ \_ _/ \_ _/ \_ 2人のジミーが近くにいる場合、部屋を空けるために移動しなければなりません。ジミーは常に右に移動して他のジミーの部屋を空けます。 // Input /o\/o\ // Output /o\ /o\ _/ \__/ \_ 遠くにいる他のジミーは、必要でない限り移動してはいけません // Input /o\/o\ /o\ // …

1
気違いの化学者と賢いプログラマー
バックストーリー あなたは化学実験室でめまいを起こし、古い気違いの化学者に誘されたことに気づきます。彼は彼の年齢のために非常によく見えないので、彼はあなたに彼のために働きたいと望み、その時だけ、あなたは実験室から逃げることができる。 仕事 入力として化学式が与えられる分子の構造式を返すのはあなたの仕事です。炭素()、酸素()および水素()原子のみが入力として使用されることに注意してください。化学式とは異なり、a は有効な量指定子であり、a は省略できません(たとえば、有効な入力ですが、そうではありません)。COH01C1H4O0CH4 あいまいさを防ぐために、二重結合と三重結合が分子に現れないと仮定します。すべての炭素原子には4つの単結合、すべての酸素原子には2、水素原子には1つの単結合が必要です。また、O-O債券も存在しないと想定しています。分子は存在する必要も安定している必要もありません。 3出力の表示の明るさを確保するために、入力に炭素原子以上が含まれることはありません。 中断することなく、炭素原子が直線に配置されている分子のみを表示する必要があります。エルゴ、C-O-C絆なし。 前のルールで除外されていない可能性のあるすべての分子を返す必要があります。無効な入力を処理する必要はありません。 次の例は、その分子に対して処理する必要があるすべてのソリューションを表示します。 分子の式の1つのページの平面での180度の回転は冗長性と見なされ、表示する必要はありません。 以下の例では、分子に可能なすべての式を示し、表示する必要のない式を指摘します。 例 入力: C2H6O2 まず、この入力に使用できるすべての式を以下に示します(@Jonathan Allanに感謝します) 01 H | O H | | H - O - C - C - H | | H H 02 H | H O | | H - O - C …

7
XNORデジタルタイミング図を描く
以下は、XNOR論理ゲートの(概略)デジタルタイミング図です。 ┌─┐ ┌─┐ ┌─────┐ ┌─┐ ┌─┐ ┌───┐ A ──┘ └─┘ └─┘ └─┘ └─┘ └─┘ └── ┌───┐ ┌───┐ ┌─┐ ┌─────┐ ┌─┐ ┌─┐ B ┘ └─┘ └─┘ └─┘ └───┘ └─┘ └ ┌─────┐ ┌─┐ ┌─┐ ┌───┐ X ──┘ └───┘ └───┘ └───┘ └──── 目標は、描かれているとおりに正確に再現することです。 ルール: 印刷するか、複数行の文字列を返すことができます。 任意の数の追跡および/または先頭の改行が許可されます。 末尾の(先頭ではない!)空白は許可されます。 拡張ASCIIボックス描画文字を使用できない場合は、Unicodeの同等の文字に置き換えることができます(バイトペナルティなし)。 これはコードゴルフなので、バイト単位の最短回答が優先されます。 バイナリ表現 便宜上、上の図のバイナリ表現は次のとおりです。 INP A=0101011101010110 …

3
アスキーアートチェス盤
この課題では、下にチェス盤を描き、動きを可能にします。 1.描画 白い正方形にはそれぞれ5x9のスペースがあります。 各黒い正方形には5x9のコロンがあります。 ボードはコロンの境界線に囲まれています。 ピースの幅は5文字で、中央の正方形の一番下の行にあります。 ポーンの幅は4文字です。中央から少し右にずれており、左側に3つの空白の正方形、右側に2つの空白の正方形があります。彼らは、正方形の底の1行上に座っています。 オプションの末尾の改行を除き、ボードの領域の外側に空白があってはなりません。 ボードとチェスマンは、以下を除き、示されているとおりに正確に描かれなければなりません。 あなたはsubsituteも:異なるシンボルのための黒い四角との国境で、あなたが置換してもよい@異なるシンボルのための黒い部分での(黒い四角のために使用したのと同じものをではなく。) 必要に応じて、ポーンを1文字左に移動できます。 。 :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: : ::::::::: :::www::: _+_ ::::::::: :::::::::: : |_|_| :: _,,::: (/) :::)@(::: )@( :::(/)::: _,, ::|_|_|::: : |@| ::"- \~:: |@| :::|@|::: |@| :::|@|::: "- \~ :::|@|:::: : |@| :::|@|::: |@| :::|@|::: |@| :::|@|::: |@| :::|@|:::: : …

9
フラグセマフォエンコーダ
あなたの目標は、Wikiで説明されているセマフォシステムに従って、特定の文を対応するフラグセマフォ文字に変換するフラグセマフォエンコーダを作成することです。 入力は、stdin(または同等のもの)を介して提供される単一の文であると想定します。出力は一連のセマフォ文字である必要があり、各行は文の1つの単語を表します。アルファベット(AZ)のみを扱う必要があり、他のすべての非スペース文字を無視する必要がありますが、大文字と小文字の両方を処理できる必要があります。出力には余分な空白を含めることができます。 セマフォ文字は3x3の正方形で表示されO、中央にがあり、フラグの位置が文字で表されている必要があり| - / \ます。各セマフォ文字は、隣接する文字とスペースで区切る必要があり、各行は空白行で区切る必要があります。表示するには長すぎる単語の折り返しを心配しないでください-行の長さが無限であることを装います。 サンプル入力: abcdefg hijklmn opqrstu vwxyz サンプル出力: \ | / O -O O O O O- O /| | | | | | |\ \ | | / -O O O- O O O- O / / / / / / \ \ | / …

2
nを法とする数論のインタープリター
(私たちの目的のための)数論の文は、次の記号のシーケンスです。 0および'(後継者)-後継者は+1、0'''' = 0 + 1 + 1 + 1 + 1 = 4 +(加算)と*(乗算) = (に等しい) (と)(括弧) 論理演算子nand(a nand bis not (a and b)) forall (ユニバーサル数量詞) v0、v1、v2、など(変数) ここに文の例があります: forall v1 (forall v2 (forall v3 (not (v1*v1*v1 + v2*v2*v2 = v3*v3*v3)))) ここでnot xは省略形ですx nand x-実際の文が使用する(v1*v1*v1 + v2*v2*v2 = v3*v3*v3) nand …
12 code-golf  number-theory  parsing  code-golf  kolmogorov-complexity  code-golf  code-golf  array-manipulation  matrix  code-golf  array-manipulation  code-golf  string  code-challenge  graphical-output  compression  code-golf  kolmogorov-complexity  code-golf  sequence  array-manipulation  code-golf  number  base-conversion  code-golf  string  decision-problem  code-golf  string  ascii-art  code-golf  string  random  code-challenge  brainfuck  code-generation  code-golf  code-golf  quine  code-golf  interpreter  code-golf  interpreter  code-golf  array-manipulation  sorting  code-golf  halting-problem  code-golf  javascript  code-golf  algorithm  code-golf  arithmetic  code-golf  math  counting  code-golf  math  code-golf  decision-problem  radiation-hardening  code-golf  conversion  bitwise  code-golf  number  decision-problem  code-golf  string  decision-problem  code-golf  random  game  code-golf  ascii-art  graphical-output  code-golf  decision-problem  binary-tree  tree-traversal  code-challenge  array-manipulation  code-challenge  graphical-output  path-finding  test-battery  algorithm  code-golf  integer  factorial  code-golf  binary-tree  code-golf  grid  graph-theory  code-golf  regular-expression  quine  code-golf  encoding  code-golf  king-of-the-hill  javascript 

2
4色のトリオミノでチェス盤を並べます
仕事: 問題を考えてみましょう:「チェス盤に1つの正方形が欠けている場合、それを21個のL-トリオミノにカットします」。これは、2の累乗である任意の正方形のチェス盤サイズで実行できるというよく知られた建設的な証拠があります。チェス盤を、穴のある小さなチェス盤と1つの大きなトリオミノに分割し、そのトリオミノを4つのトリオミノに再帰的に切断できることを確認します。 このタスクでは、8x8のチェス盤をL字型のトリオミノにカットし、隣接する2つのトリオミノが同じ色にならないように4色で着色する必要があります。 仕様: 入力は、穴の位置であり、整数のペアとして指定されます。列インデックスと行インデックスを選択できます。それぞれが0から開始するか、1から開始し、どのコーナーから増加するかを選択できます。0..7または1..8の代わりに、最初の座標としてA..Hが必要な場合があります。また、両方の座標を辞書式順序(行優先または列優先、左から右または右から左、上から下または下から上)で単一の整数0..63または1..64にパックすることもできます。完全なプログラムまたは関数を記述できます。 タイルをASCII、色付きASCII、またはグラフィックプリミティブとして出力できます。ASCII出力を選択した場合、4色を表す印刷可能なASCII文字を4つ選択できます。色付きのASCIIを選択した場合、任意の4つの印刷可能なASCII文字またはスペース以外の1文字のみを選択できます。穴はスペース文字で表す必要があります。キャラクターの1つがスペースキャラクターである場合、穴に隣接するまたはチェス盤の端にあるトリオミノは、この色ではありません。 色付きASCIIまたはグラフィック出力を選択する場合、#000、#00F、#0F0、#0FF、#F00、#F0F、#FF0、#FFF、またはご使用の環境で利用可能な最も近いものから任意の4色を選択できます。グラフィカル出力を選択する場合、グラフィカルプリミティブは、サイズが少なくとも32x32ピクセルの正方形で塗りつぶされ、他の色の2ピクセル以下で区切られている必要があります。上記が環境の画面解像度を超える場合、最小サイズ要件は、画面に収まる最大の正方形サイズに緩和されます。 指定されたチェスボードの有効なタイルを選択できます。選択したタイルの4色を選択できます。4色の選択はすべての出力で同じでなければなりませんが、すべての出力ですべての色を使用する必要はありません。 例: 入力の可能な出力= [0、0](左上隅) #??##?? ##.?#..? ?..#??.# ??##.?## ##?..#?? #.??##.? ?..#?..# ??##??## 同じプログラムの別の可能な出力(入力= [0、7]): ??#??#? ?##?##?? ..xx..xx .?x#.?x# ??##??## ..xx..xx .?x#.?x# ??##??## 「D1」の入力用に別のプログラムが生成される場合もあります(非標準ですが、チェスボードの向きに注意してください)。 AABBCCAA ACBACBAC CCAABBCC ABBAADD AABDABDC BBDDBBCC BABBACAA AABAACCA

1
ASCIIでRecamánのシーケンスを描く
Recamánのシーケンス(A005132)は、次のように定義される数学的シーケンスです。 A(n)=⎧⎩⎨0A(n−1)−nA(n−1)+nif n=0if A(n−1)−n is positive and not already in the sequenceotherwiseA(n)={0if n=0A(n−1)−nif A(n−1)−n is positive and not already in the sequenceA(n−1)+notherwiseA(n) = \begin{cases}0 & \textrm{if } n = 0 \\ A(n-1) - n & \textrm{if } A(n-1) - n \textrm{ is positive and not already in the sequence} \\ …

9
クインの大ピラミッド
このタスクは、ひねりを加えたかなり単純な挑戦です。ソースコードをピラミッドの形で出力する必要があります。ピラミッドの形状は次のように定義されます。 1 234 56789 ABCDEFG HIJKLMNOP QRSTUVWXYZa bcdefghijklmn ......etc...... この課題の主な制限は、ピラミッドのパターンを妨げないように、クインに正確に十分なバイトを含める必要があることです。たとえば、次のプログラムの長さが機能します。 1-byter: 1st layer of the pyramid (not allowed by definition of a quine). 4-byter: 1st and 2nd layers of the pyramid. 9-byter: 1st, 2nd and 3rd layers of the pyramid. etc... したがって、プログラムが次の場合: QWERTY 次のように配置されるため、有効ではありません。 Q WER TY ただし、プログラムがQWERTYUIOであれば、それで問題ありません。 Q WER …

5
ASCIIカレンダープランナー
アクティビティのリストとその開始時刻/日付を指定して、適切な日のアクティビティを示すASCIIアートカレンダーを出力します。すべてのアクティビティは同じ月に行われることが保証され、同じ日に2つのアクティビティが行われることはありません。また、すべてのアクティビティはカレンダーボックスに収まることが保証されます。 カレンダーの日付は各ボックスの左上隅にあり、ボックスは幅9スペース、高さ5スペースで、で囲まれ-てい|ます。曜日の2文字の略語は最初の行の上に中央揃えされ、週は日曜日から始まります。 たとえば、次のアクティビティがあるとします。 10/5/2018 - 9:00am - Sandbox calendar challenge 10/9/2018 - 9:00am - Post challenge to main 10/10/2018 - 10:00am - Profit 10/31/2018 - 7:30pm - Halloween party この対応するカレンダーを出力します。 Su Mo Tu We Th Fr Sa ----------------------------------------------------------------------- | |1 |2 |3 |4 |5 |6 | | | | | …

5
2D空間でオブジェクトを追跡する
説明 この課題のタスクは、n × nn×nn×n空間で特定のオブジェクトを追跡するプログラムまたは機能を考案することです。 I / O プログラムには3つの入力が与えられますが、これらは適切な方法で取得できます。 n飛行機の側面のサイズになります。(したがって、n = 5n=5n=5場合、飛行機はなります)。常に奇数の整数であると仮定できます。5 × 55×55×5n sオブジェクトの開始位置になり、座標のペアとして指定されます。(x 、y)(x,y)(x, y) D順序付けられたペアのベクトルになります。Dの形式に従います。ここで、は、基本的および主要な方向に対して常にのいずれかであり、は「ティック」の数の整数。D = [ (d0、t0)、(d1、t1)、。。。、(dn、tn)]D=[(d0,t0),(d1,t1),...,(dn,tn)]D = [(d_0,t_0),(d_1,t_1),...,(d_n,t_n)]dkdkd_kt k'N', 'NE', 'E', 'SE', 'S', 'SW', 'W', 'NW'tktkt_k これらの入力が与えられると、プログラムは平面内のオブジェクトの追跡を出力する必要があります。 ルール 出力には平面の境界が含まれている必要があります。例えば: -21012 + +┌─────┐┐ 2││ 1││ 0││ 1││ 2││ -└─────┘ 空の平面の例です。上記および横の数字は参照用であり、印刷する必要はありません。5 × 55×55×5 空白でない限り(または空白としてレンダリングする限り)、境界に任意の文字を使用できます。選択するキャラクターは、平面全体を区切る必要があります。つまり、それらの間に隙間がないようにする必要があります。 許容されるプレーンには次のものがあります。 ┌──┐.... ---- +-+ …

4
採石場のタイムラプスを掘る
建築物のクールなタイムラプスや他の大規模な作業を数分で見るのが好きですか?ここで作りましょう。 採石場を掘る掘削機を見ながら、毎日写真を撮って全体の進捗状況を確認します。そして、あなたの仕事はこのプロセスを見せることです! 採石場は、その最初の層の幅によって定義されます。 掘削機は、1日で掘る能力によって定義されます。 入力 採石場の幅。整数、常に1以上。 掘削機の掘削速度。整数、常に1以上。 出力 毎日の採石場の掘削の進捗。平らな手つかずの地面から始まり、完成した採石場で終わりました。 ルール 最終日には、掘削機の能力よりも掘るユニットが少なくなる可能性があります。過剰な作業はどこにも使用されないため、完全に掘られた採石場を出力するだけです。 すべての日の進行状況が一度に出力に存在する必要があります。出力の前日の進行状況をクリアまたは上書きすることはできません。 毎日の出力の末尾および先頭の改行は、妥当な数であれば受け入れられます。 これはcode-golfなので、コードをできるだけコンパクトにします。 明確化 作業は平らな地面から始まります。表示される地面の長さは、採石場の幅+ 2です。したがって、採石場の両側には常に1つのアンダースコア文字があります。 __________ 掘られた採石場は均等な幅でこのように見えます: _ _ \ / \ / \ / \/ そして、このような奇数幅 _ _ \ / \ / \ / V 採石場の進捗状況の例を次に示します。 _ _______ V dug 1 unit _ ______ \/ dug 2 …

6
眠りに落ちる羊を数える
ほとんどの人は、羊が眠りにつくのを数えようとすることを知っています。羊の群れがいて、そのうちのいくつかはフェンスを飛び越えており、あなたは彼らがジャンプするときに羊を数えます。おそらく、これはあなたの心を静め、眠りに落ちるようにあなたを睡眠のような状態にするのに役立ちます。 カウントされるのを待っている、右向きのASCII羊です。 '00^> || ASCII羊がフェンスを飛び越えています: '00^> /\ ++ すでに数えられている、左向きの1つを次に示します。 <^00' || チャレンジ 2つの入力整数、nおよびが与えられ、合計の羊の数mをn > 2記述し、m > 0すでに数えられた羊の数を言って、眠りに落ちる羊を数えるASCIIアート表現を出力します。 ツイストのために: 羊がいるペンの大きさにより、一番上の列には最大数の10羊しか収容できず、常に一番上の列にいる必要がある現在ジャンプしている羊は数えられません。 後続の行では、それぞれのペンの外側に羊を置くことはできません(2番目の行の左側に1番目の行よりも多くの羊を置くことはできません。右側にも同じ羊を置くことはできません)。 11羊の総数が1匹以上ある場合は、一番上の行に10プラスのジャンプ羊が必要です。 前後の空白、および羊の間の空白は問題ではありません。 羊の間には少なくとも1つの空白文字があります すべてのキャラクターが適切に並んでいます。 これらのルールが満たされている限り、羊の実際の配置は実装次第です。 例 たとえば、ここにとがn=3ありm=1、これが最も単純なケースです。 '00^> '00^> /\ <^00' || ++ || これはとでn=11、m=61本の水平線に収まる最も羊です。 '00^> '00^> '00^> '00^> '00^> /\ <^00' <^00' <^00' <^00' <^00' <^00' || || || …

8
包含-除外の視覚化
包含-除外を使用すると、他の値のいくつかを知っているセット間のいくつかの結合および交差のサイズを計算できます。私はそれを正確に説明しませんが、あなたの課題は、ベン図で包含/除外を視覚化することです。 私はいいから、円ではなく長方形を使うことになります。 任意の妥当な形式(4タプルのリスト、ペアのペアのリスト、ペアのリストなど)で、左上隅と右下隅の座標で示される長方形のリストが表示されます。すべての座標が負ではなく、言語の(合理的な)数値範囲内であると想定できます(128未満の場合はそれを指定してください)。左を含むか左を排他的にするか、右を含むか右を含むかを選択できます。選択した形式に関係なく、すべての長方形が少なくとも1x1であると想定できます。 次に、k選択する空白文字以外の単一の文字を使用して、画面上の各長方形(ASCIIキャンバス)を描画します。 ただし、2つの長方形が重複する場合は常に、重複する領域が別の非空白文字l != kで描画され、選択する必要があります。 3つの長方形が重なるときはいつでも、重なり合う領域はで描画されk、奇数の長方形をカバーする場合、、kおよび偶数の場合、が必要lです。 背景は単一の空白(0x20)でなければなりません。 テストケース(k = "#", l = ".") 0 0 9 9 1 1 10 10 2 2 11 11 ######### #........# #.#######.# #.#######.# #.#######.# #.#######.# #.#######.# #.#######.# #.#######.# #........# ######### 1 1 3 3 2 2 4 4 ## #.# ## 1 …

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