タグ付けされた質問 「code-golf」

コードゴルフは、ソースコードの最小バイトで特定の問題を解決するための競争です。

3
¿xu te te gismytermorna?(有効なギスムですか?)
(文字通り:「これはgismu -formに従う/実現するか?」) 前提 ロジバンという言語は、構築された言語です。つまり、その単語のすべてが自然に発達するのではなく作成されていることを意味します。ロジバンのセマンティックベースは、中国語、ヒンディー語、英語などの広く話されている自然言語の語根を組み合わせて合成されたギスム(ルート語)です。すべてのギスムは5文字の長さで、特定の厳密な形式に従います。 情報 私たちの目的のために、ロジバンのアルファベットは次のとおりです。 abcdefgijklmnoprstuvxz つまり、のないローマ字hqwy。 このアルファベットは、次の4つのカテゴリに分類できます。 母音 aeiou ソノラント子音 lmnr 無声子音ptkfcsx。声を出したとき、これらはそれぞれになります... 有声子音bdgvjz(に対応する有声子音はありませんx。) 有効なギスムになるには、5文字の長さの文字列が次の条件を満たしている必要があります。 子音母音パターンCVCCVまたはのいずれかCCVCVになります。Cは子音を表し、Vは母音を表します。 子音一致規則に従います。 CCVCV単語の子音一致ルール: 最初の2文字は、次の48ペア(source)のいずれかを構成する必要があります。 ml mr pl pr bl br tr tc ts dr dj dz kl kr gl gr fl fr vl vr cl cr cm cn cp ct ck cf jm jb …

5
2次元構文を解析する
バックグラウンド アリスとボブは、すべてのPPCGチャレンジに勝つためにゴルフ言語を作成しています。アリスは> <>のような2次元言語を作成したいと考えていますが、ボブはJのようなプレフィックスとインフィックスの構文を好みます。妥協として、2次元のプレフィックスとインフィックスの言語を作成することにしました。パーサーは書くのが面倒で、あなたの助けが必要です! 構文仕様 アリスとボブの言語には、小文字のASCII文字で表される変数と、大文字のASCII文字で表される関数があります。関数は、1つまたは2つの引数で呼び出すことができます。プログラムは、文字の矩形グリッドで、スペース、および左上隅には、スペースを含めることはできません。これは有効なプログラムの例です:a-zA-Za-zA-Z F Gy H R x プログラムが解析されると、1文字の変数と形式<func>(<arg>)またはの関数呼び出しを含むCスタイル言語(C、Java、Python ...)の式に変換されます<func>(<arg1>,<arg2>)。たとえば、上記のプログラムは次の式になります。 F(H(R(x)),G(x,y)) 解析プロセスの詳細は次のとおりです。 スペースは単なるフィラーであるため、解析されません。 すべての変数a-zは常にそれ自体として解析されます。 すべての関数A-Zは、関数呼び出しとして解析されます。その引数は、グリッドの下でこの順序で右にある最も近い式です。これらのいずれかのみが存在する場合は、それが唯一の引数として与えられます。すべての関数には、グリッドに少なくとも1つの引数があると仮定できます。 上記の例では、変数xとyはそれ自体として解析されます。この関数Rはx、その下とその右に何もないので、1引数呼び出しとして解析されますR(x)。同様に、の下にあるため、Hとして解析されます。関数はその下と右にあるため、として解析され、同様にのために解析されます。左上隅で解析される式は、解析プロセスの結果です。H(R(x))RGxyG(x,y)F 入出力 入力は、空でない長方形の文字配列です。これは常にアリスとボブの言語で有効なプログラムになりますが、出力には使用されない表現が含まれる場合があります。出力は、上記のプロセスの結果として解析された式になります。 ルールとスコアリング 関数の完全なプログラムを書くことができます。最小のバイトカウントが優先され、標準の抜け穴は許可されません。 テストケース これらは、形式の間に与えられ、ケース間にgrid <newline> expressionハイフン---があります。SE形式では一部の行が空白のままになりますが、空白で埋める必要があります。 x x --- x y z x --- Fx F(x) --- Fx y F(y,x) --- ABu A(B(u)) --- G H k G(H(k)) --- ABCA …

3
W x H桁のグリッドで最大のN桁の数字を見つける
正の整数Nと、幅Wと高さH(これも正の整数)の10進数のグリッド(0〜9)を取り込むプログラムまたは関数を作成します。Nは、WとHの大きい方以下になると想定できます。 グリッドに水平または垂直に表示され、通常の読み取り順または逆順で書き込まれた最大の連続したN桁の数字を印刷または返します。 数字の対角線は考慮されません。 グリッドはラップアラウンドしません。つまり、周期的な境界条件はありません。 たとえば、3×3グリッド 928 313 049 なければならない9N = 1のための出力として94N = 2のための出力として、および940N = 3に対する出力として。 4×3グリッド 7423 1531 6810 8N = 1、86N = 2、854N = 3、7423N = 4の場合、出力は次のようになります。 3×3グリッド 000 010 000 1N = 1、10N = 2、N = 3の出力010があります(N = 3の場合も有効です)。 1×1グリッド 0 0N = 1の出力があります。 便利で合理的な形式で入力を取得できます。たとえば、グリッドは、改行で区切られた数字列、多次元配列、または数字リストのリストなどです。それらがグリッドの一部である場合、出力に先行ゼロを使用できます。 これはcode-golfであるため、バイト単位の最短コードが勝ちますが、アルゴリズムが計算上効率的であることを示すことができる回答に対してブラウニーポイント(つまり、より有望な投票)も授与します。
25 code-golf  math  number  grid 

9
文字列の非親子化
適切に括弧で囲まれた文字列を入力として、一致する括弧内(またはすべての括弧の外側)にある空でないすべての部分文字列のリストを、ネストされた括弧を削除して出力します。各サブストリングは、まったく同じ一致する括弧内の文字のシーケンスである必要があります。部分文字列は深さの順にリストする必要があり、同じ深さの部分文字列は文字列に現れる順にリストする必要があります。入力が常に正しく括弧で囲まれていると仮定します。 入力には、小文字のASCII文字と括弧のみが含まれていると想定できます。 答えは、文字列が与えられたときに文字列のリストを返す関数でなければなりません。 例: 'a(b)c(d)e' -> ['ace', 'b', 'd'] 'a(b(c)d)e' -> ['ae', 'bd', 'c'] 'a((((b))))' -> ['a', 'b'] 'a()b' -> ['ab'] '' -> [] 'a' -> ['a'] '(((a(b)c(d)e)f)g)h' -> ['h', 'g', 'f', 'ace', 'b', 'd'] 'ab(c(((d)ef()g)h()(i)j)kl)()' -> ['ab', 'ckl', 'hj', 'efg', 'i', 'd'] 最少バイトが勝ちます。

2
どの言語が最短ですか?
code-golf -tagを使用して、少なくとも20の答えがある最新の50の課題を見つけるプログラムを作成します。次に、各課題の各言語のスコアを抽出します。同じ言語を使用した回答が複数ある場合は、すべてのスコアを数えます。その後、上位20の最も一般的な言語を取得し、言語名、回答数、平均バイト数、および中央値バイト数のリストを出力します。リストは、回答数の降順で並べ替える必要があります。 大文字と小文字の違いを考慮する必要があります(例:Matlab = MATLAB)。 多くの異なるバージョン番号を持つ言語(Pythonなど)では、それらを一意の言語としてカウントします。 Python != Python 2 != Python 2.7 != Python 3.x 出力例(出力形式はオプションです): cJam, 66, 12.4, 8.5 Pyth, 58, 15.2, 19 Ruby, 44, 19.2, 22.5 Python, 34, 29.3, 32 Python 2.7, 22, 31.2, 40 ... ... Java, 11, 115.5, 94.5 サポートする必要があるヘッダー形式: # Language name,またはで始まる#Language name で終わるxx …

20
細菌の増殖
標識された細菌のコロニー1を介して9空のセルと、等間隔のセルのセグメントで生をによって示さ0 0 0 2 0 0 0 1 2 0 0 3 3 0 0 毎秒、各コロニーは隣接する空のセルに広がります。2つのコロニーが同時に空のセルに到達すると、ラベルの大きいコロニーがそれを取得します。 t=0: 0 0 2 0 0 0 1 2 0 0 3 3 0 0 t=1: 0 2 2 2 0 1 1 2 2 3 3 3 3 0 t=2: 2 2 2 …

30
私の名前は公式ですか?
前書き ToonAlfrinkが言うように:「私はここで初心者が試みることができる十分な簡単な質問がないと思います!」。そのため、タスクは非常に簡単です。文字列が与えられた場合、名前が公式であるかどうかにかかわらず、真実または偽の値を出力します。 単一のタイトルケースの単語である場合、名前は「公式」です。 場合は最初の文字は(公式ではない:大文字ですadnan) 他の文字はしている場合ではない(公式ではない:大文字AdNaN) 名前にアルファベット以外の文字が含まれていない場合(非公式:Adnan123、Adnan!) 名前が1語のみで構成されている場合(公式ではありません:Adn an、Adn An) 名前は、複数の文字(公式ではないが:持っている場合A) ルール 機能またはプログラムを提供できます これはcode-golfであるため、バイト数が最小の提出が勝ちです! 注:物事を簡素化するために、この課題では、Mary-Annのような名前は公式ではありません。 名前に先頭に空白がないと仮定します。 印刷可能なASCII文字(32-126)のみが名前に使用されると仮定します テストケース Input: Adnan Output: True Input: adnan Output: False Input: AdnaN Output: False Input: Adnan123 Output: False Input: Adnan Adnan Output: False Input: A Output: False Input: Mary-Ann Output: False リーダーボード コードスニペットを表示 /* Configuration …
25 code-golf  string 

17
+1素数のカウント
自然数のように定義pがある+1素数自然数のN場合、pは素数と標準バイナリ表現である(すなわち、先頭のゼロなし)P(すなわち、前置、付加又は挿入)を添加することによって得ることができます単一の1からnの標準バイナリ表現。 たとえば、17のバイナリ表現は10001 2です。添加することにより形成することができる別個の自然数1に10001 2がある110001 2または49、101001 2または41、100101 2または37、および100011 2または35。 これらのうち、41と37は素数であるため、17には2つの+1素数があります。 仕事 厳密に正の整数受け入れプログラムまたは機能書き込みN入力及び印刷またはリターンとして別個の数+1素数のNを。 入力と出力は、整数か、その10進数または単項文字列表現でなければなりません。 標準のコードゴルフ規則が適用されます。 テストケース Input: 4 Output: 0 Input: 1 Output: 1 Input: 17 Output: 2 Input: 33 Output: 3 Input: 553 Output: 4 Input: 3273 Output: 5 Input: 4145 Output: 6 Input: 4109 Output: 7 Input: 196869 Output: 8

20
特定の周波数の音を出力する
これはかなり単純な挑戦ですが、それに似た質問は見つかりませんでした。課題は、STDINまたは同等のものを使用して周波数を取得し、その周波数に一致するトーンをHz単位で5秒間出力することです。例えば Input: 400 Output: (a tone of 400 Hz with a duration of 5 seconds) ルール 入力は、STDIN、または使用する言語の同等物を介して取得する必要があります 答えは完全なプログラムでなければなりません ビルトインを使用できます 周波数は50〜5000 Hzのいずれかになります 出力は5秒間再生する必要があります 出力は正弦波の形式でなければなりません テストケース 入力: 440 出力: 入力: 200 出力: 入力: 4000 出力: これは、これに対する最短の解決策で言語を見つけることではありません(空のプログラムがトリックを行う場所があります)-これは、すべての言語で最短の解決策を見つけることです。したがって、回答は承認済みとしてマークされません。 通常のルールとは異なり、このチャレンジよりも新しい言語(または言語バージョン)を自由に使用できます。このチャレンジに対して0バイトの回答を送信するために特別に作成された言語は、公平なゲームですが、特に興味深いものではありません。 提出物をテストできるようにインタープリターが必要であることに注意してください。以前に実装されていない言語用にこのインタープリターを自分で作成することは許可されています(推奨されます)。 また、言語はプログラミング言語の通常の基準を満たす必要があることに注意してください。 カタログ この投稿の下部にあるスタックスニペットは、a)言語ごとの最短ソリューションのリストとして、b)全体的なリーダーボードとして、回答からカタログを生成します。 回答が表示されるようにするには、次のマークダウンテンプレートを使用して、見出しから回答を開始してください。 ## Language Name, N bytes N提出物のサイズはどこですか。スコアを改善する場合、古いスコアを打つことで見出しに残すことができます。例えば: ## Ruby, <s>104</s> <s>101</s> …
25 code-golf  audio 

7
リストをタイムテーブルに追跡する
前書き 誰かがあなたの好きなアルバムをYouTubeにアップロードしたときに嫌いではないのですが、説明にはトラックリストのみが含まれていますか?このような: 1. Everything in Its Right Place - 4:11 2. Kid A - 4:44 3. The National Anthem - 5:50 4. How to Disappear Completely - 5:55 5. Treefingers - 3:42 6. Optimistic - 5:16 7. In Limbo - 3:31 8. Idioteque - 5:09 9. Morning Bell - 4:29 …
25 code-golf  string  date 

12
FizzBu​​zz風の文字列マッチャー
次のような文字列があるとしましょう: abaabbbbbaabba 指定した文字が入力文字列に表示される回数をカウントしますが、その文字が連続して表示されるのは1回のみです。たとえば、文字がの場合a、 abaabbbbbaabba ^ x x ^ 合計は2になります(が2回連続しaaてa表示されるため、「s」はカウントされません)。 これはFizzBu​​zzとどのように関連していますか? 文字が連続して3回(または3の倍数)、または連続して5回(または5の倍数)出現する場合、代わりにカウンターがデクリメントされます。3 回と 5回の両方の倍数である場合、カウンターはまだインクリメントされます。文字が1行に1回しか表示されない場合もカウンターがインクリメントされ、文字が他の行に何度も表示される場合は無視されることに注意してください(上記の状況を除く)。 要約すると、一致する文字列がの場合a、 input counter (explanation) a 1 (single occurence) aaa -1(multiple of 3) aaaaa -1(multiple of 5) aaaaaaaaaaaaaaa 1 (multiple of 15) aa 0 (none of the above) aba 2 (two single instances) aaba 1 (one single occurence(+1) …
25 code-golf  string 

12
絵文字の表情認識
絵文字を入力として受け入れ、絵文字が幸せか悲しいかを出力するプログラムを作成します。 プログラムは文字列を入力またはパラメータとして受け入れ、入力が幸せな絵文字リストにある場合は文字列「happy」を表示し、入力が悲しい顔文字リストにある場合は「悲しい」を表示する必要があります。 入力は常に有効な(幸せまたは悲しい)絵文字であり、スペースやタブはありません。 以下は、スペースで区切られた幸せな顔文字のリストです。 :-) :) :D :o) :] :3 :c) :> =] 8) =) :} :^) :-D 8-D 8D x-D xD X-D XD =-D =D =-3 =3 B^D (-: (: (o: [: <: [= (8 (= {: (^: 悲しい顔文字のスペース区切りリストは次のとおりです。 >:[ :-( :( :-c :c :-< :< :-[ :[ :{ …
25 code-golf  string 

21
月曜日のミニゴルフ#2:長いテキストの切り捨て
月曜日のミニゴルフ:毎週月曜日に(願わくば!)投稿された一連の短いコードゴルフチャレンジ。 多くのWebアプリケーション(特にソーシャルメディア)は、長いテキストの一部を自動的に切り捨てて、アプリの書式に収まるようにします。この課題では、テキストのパッセージを特定の長さに自動的にトリミングするアルゴリズムを作成します。 チャレンジ チャレンジの目標は、2つの引数を取るプログラムまたは関数を作成することです。 T、切り捨てるテキスト。 L、返される最大長。 そして、次のロジックで切り捨てられたTを返します。 Tの長さがL以下の場合、切り捨ては不要です。元の文字列を返します。 Tを長さL -2に切り捨てます。これにスペースまたはハイフンが含まれていない場合、Tを正確にL -3文字に切り捨てて、その後に省略記号を続けて返し...ます。 それ以外の場合は、結果の末尾を最後のスペースまたはハイフンまでトリミングします。省略記号...を追加して、結果を返します。 詳細 TおよびLは、任意の順序で任意の形式で使用できます。 3 < L <2 31と仮定できます。 U + 2026 Horizo​​ntal Ellipsisは使用できません…。3つのピリオドを使用する必要があります。 入力はスペースまたはハイフンで始まりません。 入力には、通常のスペース以外の空白は含まれません。(タブ、改行などはありません) テストケース 入力: "This is some very long text." 25 "This-is-some-long-hyphen-separated-text." 33 "Programming Puzzles & Code Golf is a question and answer site for programming …
25 code-golf  string 

8
CSSカラーゴルフ!
あなたはWeb開発者であり、あなたの上司が会社のWebサイトを更新することに決めました。彼は、色が少ないほど良いと判断しましたが、サイトが同じように見えることを望んでいます。あなたは彼が何を話しているのか彼が何も知らないと決定するだけですが、あなたは退屈しているので、とにかく試してみるつもりです。会社には数千のWebページがあり、各Webページには独自のCSSがあるため、必要な変更を行うスクリプトを作成することにします。HTMLの解析は必要ありません。 現在、すべてのページでrgb(255,0,0)色のような文字列が使用されています。CSSカラー属性のRGB値を(この順序で)表す3つの10進数値を指定すると、その色の最短文字列表現を返すか印刷し、次のようにCSSで使用できるようにしますcolor:<your-result-here>;。 有効なCSSカラーキーワードの完全な表を次に示します。大文字と小文字は区別されません。 例: 色は12ビットまたは24ビットで定義できることに注意してください。パターン#ABCはの短縮バージョンです#AABBCC。チャックノリスは色です。 プログラムは、文字列ではなく3つの整数のみを取ります(後述の「ボーナス」を除く)。 0, 0, 0 -> #000 (same as #000000, but shorter) 255, 0, 0 -> red 0, 128, 128 -> TEAL 139, 0, 0 -> DarkRed (OR #8B0000) 72, 61, 139 -> #483D8B 255, 255, 254 -> #fffffe 255, 85, 255 -> #f5f (same as …
25 code-golf  css 

19
無限のFTW
無限フィボナッチ列は、特定の有限バイナリワードの繰り返し連結することによって計算される二進数の無限配列です。 私たちは、その定義できフィボナッチ型単語列(又はFTW配列が)任意の配列である ⟨W N ⟩次のように形成されています。 2桁の2つの任意の配列の開始。これらの配列をW -1およびW 0と呼びましょう。 それぞれについてN> 0、ましょうW N ≔W N-1 ∥W N-2 、∥は連結を意味します。 再帰的な定義の結果、W nは常にW n + 1のプレフィックスであり、したがってすべてのW k k> nとなるような。意味で、この手段配列⟨W N ⟩無限ワードに収束します。 正式に、聞かせてWが∞ようにのみ無限アレイでWがNの接頭辞であるW ∞すべてのためのn≥0 。 上記のプロセスで形成された無限の単語を無限FTWと呼びます。 仕事 2つのバイナリワード受け入れプログラムまたは機能書き込みW -1及びW 0を入力とし、印刷W ∞を以下、追加のルールを遵守し、: 任意の順序で単語を受け入れることができます。2つの配列、配列の配列、2つの文字列、文字列の配列、または選択した区切り文字を持つ単一の文字列として。 区切り文字なしで、または隣接する数字の各ペア間に一貫した区切り文字を使用して、無限ワードの数字を印刷できます。 すべての目的で、コードがメモリ不足にならず、そのデータ型がオーバーフローしないと仮定します。 特に、これは、クラッシュの結果であるSTDOUTまたはSTDERRへの出力が無視されることを意味します。 1分とパイプに、その出力のため、私は私のマシン上でコードを実行した場合(インテルi7-3770、16ジブRAM、Fedoraの21) wc -c、それは、少なくとも百万数字を印刷する必要がありW ∞について(W -1、W 0) =(1、0)。 標準のコードゴルフ規則が適用されます。 例 レッツW -1 …

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