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

インデントに関連する課題のような、空白文字の処理と配置に関連する課題(主に、スペース、タブ、改行に限定されません)。難解なプログラミング言語のホワイトスペースに関する課題については、代わりに[whitespace-language]を使用してください。

30
消える要素
文字列Sとインデックスのリストを指定すると、その結果をの新しい値として使用しながら、の各インデックスの要素を削除してX変更SしSますS。 例えば、与えられたS = 'codegolf'とX = [1, 4, 4, 0, 2]、 0 1 2 3 4 5 6 7 | c o d e g o l f | Remove 1 c d e g o l f | Remove 4 c d e g l f | Remove 4 c …
17 code-golf  string  array-manipulation  code-golf  string  ascii-art  code-golf  number  sequence  pi  code-golf  number  array-manipulation  code-golf  string  ascii-art  code-golf  math  number  game  code-golf  math  sequence  polynomials  recursion  code-golf  math  number  sequence  number-theory  code-golf  permutations  balanced-string  code-golf  string  ascii-art  integer  code-golf  decision-problem  hexagonal-grid  code-golf  ascii-art  kolmogorov-complexity  code-golf  number  code-golf  matrix  binary-matrix  code-golf  math  statistics  code-golf  string  polyglot  code-golf  random  lost  code-golf  date  path-finding  code-golf  string  code-golf  math  number  arithmetic  number-theory  code-golf  tetris  binary-matrix  code-golf  array-manipulation  sorting  code-golf  number  code-golf  array-manipulation  rubiks-cube  cubically  code-golf  grid  optimization  code-golf  math  function  code-golf  string  quine  code-golf  ascii-art  grid  code-golf  decision-problem  grid  simulation  code-golf  math  sequence  code-golf  path-finding  code-golf  ascii-art  grid  simulation  code-golf  number  whitespace  code-golf  sequence  code-golf  sequence  code-golf  sequence  integer  code-golf  math  game  code-golf  internet  stack-exchange-api  code-golf  sequence  code-golf  internet  stack-exchange-api  code-golf  math  factoring  code-challenge  sequence  polyglot  rosetta-stone  code-golf  string  browser  code-golf  date  code-golf  base-conversion  code-challenge  cops-and-robbers  hello-world  code-golf  cops-and-robbers  hello-world 

20
それ以外の空の行の空白を取り除く
ああ、このStackのわがままな使い方のもう1つです。 Chromebookの所有者である私は、Cloud9で使用されるエディターであるAce IDEの頻繁なユーザーです。余分な空白を処理するためのツールはたくさんありますが、特に不足しているものが1つあります。空の行をクリアすることです。 今日のあなたの使命は、コピーして[ ;)]に貼り付けることができる場所からの入力を与え、同じものを出力し、それ以外の場合は空の行にすべてのスペースとタブレーターを保存することです。 #削除する空白文字を表すsを使用して、いくつかの例を示します。 入力1: if (this.Color !== 'blue') { ## this.Color = 'blue'; } 出力: if (this.Color !== 'blue') { [empty line] this.Color = 'blue'; } 入力2: function outputSomething(times) { for (var iter = 0; iter < times; iter++) { console.log('"# # " represents a tabulator'); // …

3
文字列内のパターンを検索
この挑戦では、あなたの仕事は、与えられた構造を持つ部分文字列を見つけることです。 入力 入力は、空ではない2つの英数字文字列、パターン p、およびテキスト tです。の考え方は、の各文字がp連続して空でない部分文字列を表し、その部分文字列tが隣り合って出現し、pそれらの連結を表すことです。同一の文字は同一の部分文字列に対応します。たとえば、パターンaaは空でない正方形(短い文字列をそれ自体に連結することによって取得される文字列)を表します。したがって、パターンaaは部分文字列byebyeとa一致し、それぞれ一致しbyeます。 出力 テキストtにp一致する部分文字列が含まれている場合、出力はその部分文字列になり、の文字に:対応する文字列の間にコロンが挿入されますp。例えば、我々が持っている場合t = byebyenowとp = aa、その後、bye:bye許容出力されます。一致する部分文字列にはいくつかの選択肢がありますが、そのうちの1つだけを出力します。 t一致する部分文字列が含まれていない場合、出力は悲しい顔になり:(ます。 規則と説明 の異なる文字はp同一の部分文字列に対応できるためp = aba、文字列と一致できますAAA。文字は空でない文字列に対応する必要があることに注意してください。特に、pがより長い場合t、出力はでなければなりません:(。 完全なプログラムまたは関数を記述できます。また、2つの入力の順序を変更することもできます。最小のバイトカウントが優先され、標準の抜け穴は許可されません。 テストケース 形式で与えられますpattern text -> output。他の受け入れ可能な出力が存在する可能性があることに注意してください。 a Not -> N aa Not -> :( abcd Not -> :( aaa rerere -> re:re:re xx ABAAAB -> A:A MMM ABABBAABBAABBA -> ABBA:ABBA:ABBA x33x 10100110011001 -> 10:1001:1001:10 …
17 code-golf  string  code-golf  ascii-art  geometry  code-golf  ascii-art  code-golf  sequence  stack  code-challenge  number  sequence  answer-chaining  code-golf  code-challenge  math  combinatorics  binary-matrix  code-golf  number  code-golf  cryptography  bitwise  code-golf  sudoku  code-golf  brainfuck  metagolf  code-golf  probability-theory  number-theory  primes  fewest-operations  factoring  golf-cpu  code-golf  restricted-source  code-golf  graphical-output  sequence  binary  code-golf  tips  c#  code-golf  geometry  code-golf  graphical-output  fractal  code-golf  number  sequence  code-golf  number  array-manipulation  popularity-contest  game  board-game  code-golf  puzzle-solver  grid  code-golf  ascii-art  geometry  grid  tiling  code-golf  ascii-art  whitespace  balanced-string  code-golf  card-games  king-of-the-hill  javascript  code-golf  whitespace  balanced-string  code-golf  code-golf  math  abstract-algebra  code-golf  java  code-golf  interpreter  stack  code-golf  base-conversion  code-golf  tips  code-golf  ascii-art  geometry  brainfuck  metagolf  code-challenge  math  quine  code-generation  code-golf  number  kolmogorov-complexity  arithmetic  expression-building  code-golf  string  code-golf  quine  popularity-contest  code-golf  base-conversion  code-challenge  image-processing  code-golf  conversion  coding-theory 

20
数字を分解してください!
あなたの仕事は、以下の形式を使用して数値を分解することです。 これはベース変換に似ていdigitsますが、ベースにリストする代わりに、リストをvalues入力に追加するようにリストします。 指定されたベースがの場合、nリスト内の各数値はの形式である必要があります。k*(n**m)ここで0<=k<nおよびmはリスト全体で一意です。 スペック 合理的な入力/出力フォーマット。プログラム/関数は2つの入力を受け取り、リストを出力します。 出力リストの順序は任意です。 0 除外または含めることができます。 リード0は許可されます。 組み込みが許可されます。 テストケース number base converted list input1 input2 output 123456 10 [100000,20000,3000,400,50,6] or [6,50,400,3000,20000,100000] 11 2 [8,2,1] or [0,0,0,0,8,0,2,1] 727 20 [400,320,7] 101 10 [100,1] or [100,0,1] 得点 これはcode-golfです。バイト単位の最短ソリューションが優先されます。
16 code-golf  number  sequence  number-theory  base-conversion  code-golf  bitwise  hashing  code-golf  string  ascii-art  whitespace  code-golf  math  code-golf  code-golf  image-processing  counting  code-golf  math  arithmetic  checksum  code-golf  code-golf  math  arithmetic  number-theory  code-golf  array-manipulation  random  code-golf  string  code-golf  math  ascii-art  base-conversion  code-golf  graphical-output  geometry  3d  code-golf  math  linear-algebra  matrix  code-golf  math  number  sequence  code-golf  array-manipulation  code-golf  math  matrix  linear-algebra  code-golf  number  sequence  counting  code-golf  string  code-golf  string  restricted-source  quine  sorting  code-golf  string  geometry  code-golf  string  code-golf  networking  code-golf  base-conversion  code-golf  math  matrix  code-golf  arithmetic  linear-algebra  matrix  code-golf  number  arithmetic  grid  code-golf  number  source-layout  code-golf  string  bitwise  checksum  code-golf  array-manipulation  code-golf  string  probability-theory  code-golf  tips  code-golf  sequence  code-golf  string  math  sequence  calculus  code-golf  string  palindrome  bioinformatics  code-golf  math  combinatorics  counting  permutations  code-golf  parsing  logic-gates  code-golf  arithmetic  number-theory  combinatorics  code-golf  math  sequence  polynomials  integer  code-golf  string  ascii-art  chess  code-golf  string  code-golf  number  code-golf  string  ascii-art  parsing  code-golf  code-golf  number  natural-language  conversion  code-golf  arithmetic  code-golf  string  code-golf  ascii-art  decision-problem 

23
与えられた括弧を使用して文字列をインデントします
プログラムへの次の入力がある場合: ブロック開始文字のリスト ブロック終了文字のリスト フォーマットする文字列 インデントされた2つの文字セットで区切られたブロックで文字列をフォーマットします。 フォーマットはレベルごとに2つのスペースを使用して行われ、下の例に示すように括弧が配置されます。開始文字と終了文字のセットがばらばらであると仮定することができます。 用など{[(<と}])>開口部と文字セットを閉じると、次の文字列として: abc{xyz{text[note{comment(t{ex}t)abc}]}} 次の出力が期待されます。 abc { xyz { text [ note { comment ( t { ex } t ) abc } ] } } 「括弧」文字のリストをハードコーディングすることはできません。ただし、入力方法は指定されていません。これは、必要に応じて、コマンドライン引数または標準入力を使用できます。

22
ホワイトスペースゴルファーを実装する
などのいくつかの二次元esolangs、フォークなど、およびいくつかの非esolangs、Pythonは、時々 、コードの行の前にスペースを必要とすることができます。これはあまりゴルフではありません。また、私は怠け者で、コードの前に多くのスペースを必要とする2D言語を書いています。あなたの仕事は、これらの言語をゴルファーにするツールを書くことです。 もちろん、これは完璧ではありません。たとえば、ソースの行の最初の文字が数字の場合は使用できません。ただし、通常は有用です。 チャレンジ 次のいずれかのプログラムまたは関数を作成します... ... 1つの引数、ファイル名または文字列、または... ...標準入力から読み取ります。 あなたのプログラムは次のような動作catをします: 行の最初の文字が数字の場合、コードはx個のスペースを出力します。xはその数字です。 それ以外の場合は、単に印刷されます。 入力内の他のすべての文字と同様に。 テストケース 入力: foo bar foo bar 1foo bar foo bar foo bar 2foo bar foo bar foo bar foo bar 出力: foo bar foo bar foo bar foo bar foo bar foo bar foo bar foo bar foo …

1
有効な迷路の数
与えられたWxHグリッドを、どのように多くの可能な迷路がありますか? 迷路について知っていること: グリッドのH高さは正確に正方形で、W幅は正方形です。 開始、終了、空の3つのタイプの正方形があります。迷路には、開始と終了がそれぞれ1つだけ含まれている必要があり、残りのすべての正方形は空です。 迷路全体を囲む壁があります。 以下の規則に違反しない限り、壁は任意の2つの正方形の間のエッジに存在できます。 開始広場から終了広場までのパスが存在する必要があります。 したがって、との2つの数値を指定するWとH、可能な正方形/壁構成の数を表す単一の数値を返す必要があります。あなたは保証されていますW*H > 1 たとえば、2x2迷路の100構成はまったく異なります。 これはコードゴルフなので、最短の答えが勝ちです!

7
Cコード圧子
状況:あなたは高校の教師で、コンピューティングクラスにCプログラムの書き方を教えています。ただし、これは用語の始まりに過ぎないため、インデントとスペースの重要性については教えていません。あなたが彼らの作品に印をつけていると、あなたの目はとても痛くなり、あなたは苦痛に悲鳴を上げ、これが続くことができないことに気づきます。 タスク:任意の言語で、有効なCソースコードを入力として受け取り、適切にフォーマットされたプログラムを作成することにしました。人気のコンテストなので、適切にフォーマットされたコードを決定する必要があります。できるだけ多くの機能を実装することをお勧めします。以下に例を示します。 各行の前に適切なインデントを追加します 後にスペースを追加,変換例えば、およびその他の演算子をint a[]={1,2,3};しますint a[] = {1, 2, 3};。ただし、文字列リテラル内で演算子を処理しないでください。 各行の末尾のスペースを削除します ステートメントを複数の行に分割します。たとえば、生徒が書いtmp=a;a=b;b=tmp;たり、int f(int n){if(n==1||n==2)return 1;else return f(n-1)+f(n-2);}すべてを1行にしたりする場合、それらを別の行に分割できます。forただし、ループには注意してください。セミコロンが含まれていますが、分割する必要はないと思います。 各関数を定義した後に新しい行を追加します 生徒のコードを理解するのに役立つ他の機能もあります。 受賞基準:これは人気コンテストなので、ほとんどの賛成票で答えが勝ちます。同点の場合、実装されているほとんどの機能を備えた答えが優先されます。それが再び同点の場合、最短のコードが優先されます。 回答には、実装した機能のリスト、およびサンプルの入力と出力を含めることをお勧めします。 編集:ここのコメントで要求されているのはサンプル入力ですが、これは参照用であり、できるだけ多くの機能を実装することをお勧めします。 入力: #include <stdio.h> #include<string.h> int main() { int i; char s[99]; printf("----------------------\n;;What is your name?;;\n----------------------\n"); //Semicolon added in the string just to annoy you /* Now we take …

1
整数操作によりIEEE 754 64ビットのバイナリ浮動小数点数を実装します
(とりあえず質問「C」にタグを付けましたが、共用体をサポートする別の言語を知っている場合は、それも使用できます。) あなたの仕事は+ - * /、次の構造体の4つの標準的な数学演算子を作成することです。 union intfloat{ double f; uint8_t h[8]; uint16_t i[4]; uint32_t j[2]; uint64_t k; intfloat(double g){f = g;} intfloat(){k = 0;} } 演算自体は整数部分のみを操作またはアクセスするため(演算中にdoubleと比較することはありません)、結果はまったく同じです(またはのような非数値の結果の場合は機能的に同等ですNaN)対応する数学演算がdouble代わりに直接適用されたかのように。 操作する整数部分を選択できます。おそらく、異なる演算子間で異なる部分を使用することもできます。(ユニオンのフィールドのいずれかから「unsigned」を削除することもできますが、それを実行するかどうかはわかりません。) スコアは、4つの演算子のそれぞれの文字のコードの長さの合計です。最低スコアが勝ちます。 IEEE 754規格に慣れていない私たちの人のために、ここではウィキペディアにそれについての記事です。 編集: 03-06 08:47 intfloat構造体にコンストラクタを追加しました。double /などを手動で設定するのではなく、テストに使用できます。

2
Java / C / C ++ / etcの再インデント。コード
コードを適切にフォーマットするために空白を追加または削除するプログラムを記述します。完了したときのコードの外観に関する規則: 行には、{およびの2つ以上を含めることはできません}。 A {は常に行の最後にある必要があります。 A }は常に行の唯一のものでなければなりません(その前にある空白以外)。 各行の前の空白の量は、現在のネスト数の固定倍数である必要があります。(変更しない限り、好きなだけインデントを使用できます。) これらのルールのいずれかを満たすことに寄与しない空白を挿入または削除しないでください。 最初の行のネストカウントは0です。他の行のネストカウントは、前の行のネストカウントに、前の行にが含まれている場合は1を加算し{、現在の行にが含まれている場合は1を減算し}ます。 {そして、}内部の文字列リテラルやコメントは、上記のルールではカウントされません。文字列リテラルは、一重引用符または二重引用符で囲まれたテキストです。単一引用符または二重引用符の直前に奇数個のバックスラッシュが含まれていると、文字列リテラルの終わりとして解釈されません。コメントは、/*および*/で囲まれたテキスト、または行//の終わりまで続くテキストです。複数行コメント開始マーカーでは、最初のマーカーのみがカウントされます。コメントは文字列リテラル内では解析されません。 例 main() {printf("Hello!"); // I don't care about the world... } becomes: main() { printf("Hello!"); // I don't care about the world... } int main(){ puts("a"); puts("b"); } becomes: int main(){ puts("a"); puts("b"); } main() { printf("{"); /* } } …

1
浮かびますか?
チャレンジ ボートの底を表す2D文字列を入力として指定すると、ボートが浮くかどうかを決定する必要があります。この2D文字列は、最も便利な形式にすることができます。(改行付きの文字列、文字列のリスト、文字のリストのリストなど)。浮かぶ場合は真の値を、沈む場合は偽の値を出力します。 船底の密度が一定でない場合、ボートは転倒するため、のすべての特性は同じでなければなりません。また、スペースで表される大きな穴がボートにある場合、沈みますので、ボートに4より大きい面積の穴があってはなりません。次に例を示します。 ######## # #### ######## # ## ## # ##### ######## このボートは有効です。その最大の穴の面積は4であるためです。このボート: ######## ######## # ## # ##### ######## 面積が7の穴があるため、は無効です。すべての入力の外側は穴のない塗りつぶされた四角形であると安全に想定できます。さらにいくつかのテストがあります: $$$$$$$$ ***$$$$$ ***$$$$$ ***$$$$$ $$$$$$$$ Invalid density. Sink. %%%%%%%% % % % %%%%% % % % % %%%%%%%% None of the holes are larger than 4. Float. OOOOOOOO …

3
タブを展開(expand(1)を実装)
今回のタスクは、expand(1)タブをスペースに展開するPOSIX ユーティリティのバリアントを実装することです。 あなたのプログラムが取ることですタブストップ仕様をし、その後に標準の入力を読んで、次のタブストップに到達するためのスペースの適切な量を入力してタブ文字を置き換えます。結果は標準出力に書き込む必要があります。 タブストップ仕様 タブストップ仕様は、単一の番号、またはタブストップのカンマ区切りリストのいずれかから成ります。単一の数値の場合は、その数の倍数がコンマ区切りのリストで発生したかのように繰り返されます(つまり4、として機能します4,8,12,16,20,...)。コンマ区切りリストの各エントリは、オプションで接頭辞が付いた正の整数です+。+プレフィックスは、コンマ区切りのリスト内の前の値に相対的な差を示しています。リストの最初の値は絶対値(つまり、プレフィックスなし)でなければなりません。タブストップは、次のスペース以外の文字の列(展開されたタブに続く)を指定し、左端の列を番号0と見なします。タブは常に少なくとも1つのスペースに展開する必要があります。 入出力 タブストップの指定は、プログラムの最初のコマンドラインパラメータとして使用するか、または標準の入力から(改行で終了する)入力の最初の行として読み取るかを自由に選択できます。タブストップが読み取られた後、EOFまでの残りの入力(前者の場合はすべての入力)が処理および拡張されます。拡張出力は標準出力に書き込まれます。 すべての展開されたタブストップ、およびすべての入力は、最大80列幅であると想定されます。すべての拡張タブストップは厳密に増加しています。 例 タブストップの指定4,6,+2,+8はと同等4,6,8,16であり、両方の入力がある ab<Tab>c <Tab><Tab>d<Tab>e<Tab>f に展開されます(␣スペースを示します) ab␣␣c ␣␣␣␣␣␣d␣e␣␣␣␣␣␣␣f 01234567890123456 (Ruler for the above, not part of the output) 1111111 スコアリングは純粋なコードゴルフです。最短のコードが勝ちます。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.