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

特定の言語でゴルフするためのヒント、特定のチャレンジタグで上手くいく、または特定のコードを改善するための質問。

15
拡張真実マシン
多くの人々は、プログラミングにおける真実マシンとは何かを知っています。しかし、私たちが物事を一気に始める時です。拡張真実マシンの紹介!拡張真理値マシンは、整数nと空でない文字列の2つの入力を入力として受け取りますs。s nオプションの末尾の空白を使用して時間を出力します。ただし、nがに等しい場合、プログラムが手動で停止されるまで、つまり終了し0ないように出力sする必要があります。 また、nが負の数の場合、文字列を逆にする必要があります。たとえばs=helloandのn=-1場合、出力はになりますolleh。 入力の標準的な方法、無限を処理できる限りのあらゆる種類の出力。無限を処理しない答えがある場合、それが興味深いか無限の出力を処理できない言語である場合は、気軽に投稿してください。 テストケース n, s, output 5, "hello world", "hello worldhello worldhello worldhello worldhello world" 0, "PPCG", "PPCGPPCGPPCGPPCG..." -2, "truThY", "YhTurtYhTurt" 2000, "o", "oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo" これはcode-golfなので、最短のコードが勝ちます! オリジナルのサンドボックスの投稿はこちらです。編集が行われました。この課題のアイデアを作成してくれた@ComradeSparklePonyに感謝します。

13
逆順列インデックス
前書き リストの辞書式の順列n個の要素は、0から番号を付けることができ、N!-1.たとえば、3!= 6個の順列が(1,2,3)あろう(1,2,3)、(1,3,2)、(2,1,3)、(2,3,1)、(3,1,2)、(3,2,1)。 順列がリストに適用されると、その要素は順列の数字と同じ順序で並べられます。たとえば、yieldsに順列(2,3,1)を適用しl = (a,b,c)ます(l[2],l[3],l[1]) = (b,c,a)。 順列の逆は、この操作を逆にする順列として定義されます。つまり、順列を適用し、その逆(またはその逆)は配列を変更しません。たとえば、yの逆(2,3,1)は(3,1,2)、(b,c,a)yieldsに適用されるため(a,b,c)です。 また、順列自体に適用される順列の逆は、整数1… nを生成します。たとえば、yields に適用(3,1,2)し(2,3,1)ます(1,2,3)。 私たちは今、関数定義revind(Xをインデックスと順列の逆置換の指標として)のx。(興味がある場合、これはA056019です。) インデックスの順列ので、私は唯一の最後の変更のkリストの項目を場合に限っ 0≤ I < K!、我々は影響を与えずに、リストの先頭に任意の数の要素を追加することができますrevind(Iを)。したがって、リストの長さは結果に影響しません。 チャレンジ あなたのタスクはrevind(x)を実装することです。入力/引数として単一の非負整数xを取り、結果を単一の非負整数として出力/返す完全なプログラムまたは関数を作成します。 入力および出力は0インデックスまたは1インデックスの場合がありますが、これはそれらの間で一貫している必要があります。 インデックスによって順列を生成する、順列のインデックスを返す、または逆順列を見つける組み込み関数は禁止されています。(すべての順列または次の順列を生成するビルトインが許可されます。) 標準のコードゴルフ規則が適用されます。 例 以下の例は0から始まります。 Input Output 0 0 1 1 2 2 3 4 4 3 5 5 6 6 13 10 42 51 100 41 1000 3628 2000 …
17 code-golf  combinatorics  permutations  code-golf  image-processing  brainfuck  encode  steganography  code-golf  ascii-art  code-golf  ascii-art  kolmogorov-complexity  code-golf  ascii-art  fibonacci  code-golf  string  code-golf  sorting  popularity-contest  statistics  code-golf  ascii-art  kolmogorov-complexity  code-golf  code-golf  ascii-art  tic-tac-toe  code-golf  string  code-challenge  classification  test-battery  binary-matrix  code-golf  math  arithmetic  code-golf  ascii-art  random  code-golf  string  code-golf  number  binary  bitwise  code-golf  number  arithmetic  code-golf  math  ascii-art  code-golf  string  ascii-art  code-golf  string  ascii-art  code-golf  string  code-golf  counting  code-golf  number  binary  bitwise  decision-problem  code-golf  array-manipulation  code-golf  tips  brain-flak  code-challenge  quine  source-layout  code-generation  code-golf  linear-algebra  matrix  abstract-algebra  binary-matrix  code-golf  string  palindrome  code-golf  puzzle-solver  sudoku  code-golf  ascii-art  code-golf  graphical-output  internet  code-golf  ascii-art  kolmogorov-complexity  code-golf  math  code-golf  clock 

1
scanfよりもCで複数のintを読み取るより良い方法
ゴルフチャレンジでCの4つのintを読み取ろうとしていますが、解決するために必要なコードの長さに悩まされています。 scanf("%d%d%d%d",&w,&x,&y,&z) これは29文字です。これは、合計コードサイズが101文字であることを考えると、非常に大きなものです。本当に必要ないので、最初のintを取り除くことができます。そのため、次のコードを取得します。 scanf("%*d%d%d%d",&x,&y,&z) これは27文字ですが、まだ長いです。 私の質問は、私が知らないintを読み取る他の方法(トリック、関数、K&Rなど)があり、このコードを減らすのに役立つでしょうか? どうもありがとう。 編集:一部のユーザーは、私の質問はCでのゴルフのヒントに似ていると報告しています このトピックにはCコードを短縮するための多くの有用な情報が含まれていますが、入力を読み取るためのより良い方法を提供しないため、実際のユースケースには関係ありません。 scanfよりも複数の整数を読み取るための実際の方法が実際にあるかどうかはわかりません(それが最初に質問をしている理由です)ヒントとコツ。 より良い方法がなければ、誰かがより良い解決策を見つけたとしても、私の質問は近い将来に役立つことがあります。 EDIT2:私は完全なプログラム(機能のトリックはありません)と可能なすべてのライブラリを探しています。C ++ではなく、Cである必要があります。現在、私のプログラム全体は次のようになっています。 main(w,x,y,z){scanf("%*d%d%d%d",&x,&y,&z)} コードを短縮する限り(これはコードゴルフ:))、c ++でない限り、どんなトリックでも大歓迎です
17 code-golf  tips 

3
Pythonでユーザー入力を取得するための短い方法はありますか?
これは挑戦ではありません。19バイト未満のpython(2または3)の2つの別個の変数にユーザー入力を取得することが可能なのかどうか疑問に思っています。これらはすべて私が得ることができる最短です: a,b=input(),input() a=input();b=input() (newline replaced with semicolon for readability) i=input;a,b=i(),i() これを行う短い方法はありますか?
17 code-golf  tips  python 

7
Kでのゴルフのヒント
Kは、アーサー・ホイットニーが設計したAPLファミリーのプログラミング言語です。公式の通訳者はクローズドソースで商用ですが、ワークスペースの制限が32ビットのアドレス空間に制限された試用版(コードゴルフでは問題になりません)は、Kx Systemsの Webサイトで見つけることができます。kdb +データベースの一部としてバンドルされているこのバージョンは、通称「K4」と呼ばれています。K3に基づいたKonaや、K5に基づいてブラウザベースのREPLを備えたoKという独自のインタープリターを含む、オープンソースのK実装もあります。 Kx SystemsにはK4 / kdb + / Q情報を含むwikiがあり、Kona GitHubページには優れた参考資料のコレクションもあります。私はoK / k5のマニュアルを書き始めました。これは役に立つリファレンスになるかもしれません。 同様JとAPL、Kは非常に簡潔で強力な言語であり、多くの場合、コードゴルフに示す良いを作ることができます。発見したヒント、トリック、イディオムを共有してください。Kを試していない場合は、試してみてください。回答ごとに1つのヒントを投稿してください。
17 code-golf  tips  k 

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 

4
ポイントフリーでのタプル追加
関数を表現できる最短の方法は何ですか f(a,b)(c,d)=(a+c,b+d) ポイントフリー表記で? pointfree.ioは私たちに与えます uncurry (flip flip snd . (ap .) . flip flip fst . ((.) .) . (. (+)) . flip . (((.) . (,)) .) . (+)) 少しの作業で短縮できます uncurry$(`flip`snd).((<*>).).(`flip`fst).((.).).(.(+)).flip.(((.).(,)).).(+) 76バイト。しかし、これは、そのような単純なタスクにとっては依然として非常に長く複雑です。ペアワイズ加算をより短いポイントフリー関数として表現する方法はありますか? 関数のポイントフリー宣言の意味を明確にするために、関数のポイントフリー宣言には、既存の関数と演算子を使用し、目的の関数が作成されるようにそれらを相互に適用することが含まれます。バッククォート、括弧やリテラル値([]、0、[1..3]、など)が許可されますが、キーワードは次のようにしているwhereとletはありません。これの意味は: 変数/関数を割り当てることはできません ラムダは使用できません インポートできません これは、CMCであったときの同じ質問です

5
ゴルフ言語での保管のヒント
ゴルフの言語を書いています。 コードゴルフ言語で保存するための変数、スタック、テープ、レジスタなどを提案しますか?暗黙的な入力はどうですか? 大まかな定義: 変数は、値が割り当てられ、以降その名前で取り出すことができることを単に名前(長いゴルフの言語で、通常は1文字)です。 レジスタは、変数のようなものですが、それは値を取得/設定するための(通常はシングルバイト)独自のコマンドがあります。 スタックは、最も最近追加された値(「上」値)が変更されるものである値の可変長配列/リストです。 キューは、「上の値を除いて、スタックのようなものです底が」改変されているものです。 テープは、各値がインデックスを有する値の静的配列/リストです。スタックとテープの主な違いは、テープ上の値がインプレースで変更されることです。 さまざまなシナリオおよび全体に対する各オプションの長所と短所を知っていただければ幸いです。意見を避け、推論を伴う陳述をバックアップしてください。

1
Starryでのゴルフのヒント
Starryでゴルフをするための一般的なヒントは何ですか?私は、コードゴルフの問題に適用でき、少なくともある程度Starryに固有のアイデアを探しています(たとえば、「コメントの削除」は答えではありません)。 回答ごとに1つのヒントを投稿してください。
16 code-golf  tips  starry 

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 

7
Prologでのゴルフのヒント
Prologでゴルフをするための一般的なヒントは何ですか?私は、Prologに少なくともある程度固有の一般的なゴルフ問題のコードに適用できるアイデアを探しています(たとえば、1文字の変数は、プログラムのサイズを小さくするためにPrologに固有ではありません)。 Prologの実装に固有のものかどうかをヒントに明記してください(例:SWI-Prolog固有のビルトイン) 回答ごとに1つのヒントのみ、または同じメインアイデアに密接に関連するヒントのリストのみを投稿してください。
16 code-golf  tips 

3
Python Importを使用したゴルフ
Pythonでインラインのシングルユースインポートを使用するのが有益な場合 例えば: __import__("x").doSomething() 上記は下よりも短くなっていますか? import x x.doSomething() または from x import* doSomething()
16 code-golf  tips  python 

16
T-SQLでのゴルフのヒント
T-SQLでゴルフをするための一般的なヒントは何ですか?私は、少なくともT-SQLに特有のゴルフ問題全般のコーディングに適用できるアイデアを探しています。回答ごとに1つのヒントを投稿してください。 元のアイデアをくれたMarcogに感謝します。:)
16 code-golf  tips  sql 

6
Perl 6でのゴルフのヒント
Perl 6でゴルフをするための一般的なヒントは何ですか?少なくともPerl 6に固有のゴルフ問題全般のコーディングに適用できるアイデアを探しています(たとえば、「コメントの削除」は答えではありません)。回答ごとに1つのヒントを投稿してください。 Perl 6はPerl 5ではないため、この質問は重複していません。Perl 5ゴルフのヒントのほとんどは、Perl 6には当てはまりません。
16 code-golf  tips 

10
Clojureでのゴルフのヒント
Clojureを使用したコードゴルフのヒントは何ですか? この質問の目的は、Clojureに固有の技術のリストを収集し、一般的なコードゴルフの問題で使用できるようにすることです。
16 code-golf  tips  lisp 

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