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

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

7
ランダムCSSカラーコード
JavaScriptでランダムなCSSカラーコードを生成することに関するこのブログ投稿には、JavaScriptでランダムな色を生成するための複数のソリューションがあります。私が見つけることができる最も短いものはこれです: '#'+(Math.random()*0xffffff).toString(16).slice(-6) CSSカラーコードに慣れていない場合は、こちらのドキュメントをご覧ください。 もっと上手くできる?他の言語はどうですか?
10 code-golf  random  css 

16
最長出力の最短コード[終了]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 3年前休業。 これはかなりシンプルです。 できるだけ多くの出力を生成しながら、できるだけ短いプログラムを作成します。 面白くするために、無限の出力を生成するプログラムは失格となります。 勝者は、最大の出力サイズ/コードサイズ比を持つプログラムです。 結果は、私のコンピューターで動作するものに基づいています。これは、Mac OS X 10.7.5を実行し、Intel Core i5と8GBのメモリを搭載したMacです。
10 code-golf 

7
コードゴルフ:フェイリーシーケンス(I)
チャレンジ このタスクでは、整数N(10 ^ 5未満)が与えられ、次数NのFareyシーケンスが出力されます。 入力Nは1行で指定され、入力はEOFで終了します。 入力 4 3 1 2 出力 F4 = {0/1, 1/4, 1/3, 1/2, 2/3, 3/4, 1/1} F3 = {0/1, 1/3, 1/2, 2/3, 1/1} F1 = {0/1, 1/1} F2 = {0/1, 1/2, 1/1} 制約 入力数は10 ^ 6の値を超えません 任意の言語を使用できます 最短のソリューションが勝ちます!
10 code-golf  math  code-golf  math  code-golf  number  number-theory  code-golf  math  arithmetic  repeated-transformation  code-golf  geometry  popularity-contest  code-golf  code-golf  tips  haskell  math  fastest-algorithm  code-golf  combinatorics  code-golf  math  polynomials  rational-numbers  code-golf  code-golf  popularity-contest  javascript  code-golf  kolmogorov-complexity  code-golf  code-golf  math  combinatorics  permutations  code-challenge  restricted-source  random  array-manipulation  code-challenge  generation  code-golf  code-golf  ascii-art  arithmetic  division  code-challenge  number  code-golf  math  number  binary  code-golf  ascii-art  code-golf  interpreter  stack  code-golf  internet  networking  code-golf  math  code-golf  ascii-art  code-golf  math  sequence  code-golf  hello-world  restricted-source  code-golf  ascii-art  code-golf  geometry  code-golf  kolmogorov-complexity  pi  code-golf  math  combinatorics  permutations  code-golf  math  code-challenge  ascii-art  code-golf  string  code-golf  quine  code-golf  math  floating-point  golfscript  code-golf  string  code-golf  sliding-puzzle  code-challenge  arithmetic  code-golf  math  code-golf  geometry  optimized-output 

2
Adaアレイをゴルフする
バックグラウンド Adaは、その簡潔さで正確に知られているわけではないプログラミング言語です。 ただし、その配列リテラル構文では、理論的にはかなり簡潔な配列指定が可能です。以下は、配列リテラル 構文の簡単なEBNF記述です(bottlecaps.deに渡すことができます: array ::= positional_array | named_array positional_array ::= expression ',' expression (',' expression)* | expression (',' expression)* ',' 'others' '=>' expression named_array ::= component_association (',' component_association)* component_association ::= discrete_choice_list '=>' expression discrete_choice_list ::= discrete_choice ('|' discrete_choice)* discrete_choice ::= expression ('..' expression)? | 'others' 簡単にするために、整数の1次元配列に限定します。つまり、式の値には整数のみを使用します。おそらく、将来の課題で、より高度なもの(変数や多次元配列の宣言など)を試すことができます。整数リテラルを使用する必要はありません。 わかりやすくするために、Ada配列リテラルとpython-esqueの同等の表現の例をいくつか示します。 (1, 2, …

6
一貫したオーバーヘッドバイトスタッフィング(COBS)
これが以前に投稿されていないことに驚いています! 一貫オーバーヘッド・バイトスタッフィング(COBS)アルゴリズムが区切バイトストリームに使用されます。 フレームマーカー(0x00を使用します)を選択し、ストリーム内で0x00が発生するたびに、次の0x00が発生するまでバイト数で置き換えます(これをマイルストーンと呼びます)。これにより、値の範囲が0..255から1..255に減少し、0x00がストリーム内のフレームを明確に区切ることができるようになります。 マイルストーンで、次の255Bに0x00が含まれていない場合、これは最大マイルストーン長を超えます-アルゴリズムは255Bで「停止」し、別のマイルストーンを配置する必要があります。これは「一貫したオーバーヘッド」です。 最初のバイトは最初のマイルストーンになり、最後のマイルストーンはフレームマーカーまでのバイト数になります。 ウィキペディアのいくつかの例(色分けされている記事を読むのに最適です): 0x00 as frame marker Unencoded data (hex) Encoded with COBS (hex) 00 01 01 00 00 00 01 01 01 00 11 22 00 33 03 11 22 02 33 00 11 22 33 44 05 11 22 33 44 00 11 00 00 …

10
あらゆるベースのFizzbuzz
チャレンジ 入力: 2〜62の整数。bbb 出力: カウントの等価に基部における桁ための任意の合理的な表現を使用して、。1115000105000105000_{10}bbb しかしながら: 数はで割り切れる場合(丸みを帯びた下、例えば、ベース7は、7/2 = 3.5となり、3.5 + = 4.5 1、に丸め4)の代わりに数、出力'フィズ' 。⌊b÷2+1⌋⌊b÷2+1⌋\lfloor b÷2+1\rfloor 数はで割り切れる場合(切り上げ、例えば11月3日= 3.666、3.666 + 6.666 = 3、に丸め7)、出力'バズ'。⌈b÷3+3⌉⌈b÷3+3⌉\lceil b÷3+3\rceil おそらく推測できると思いますが、数値が両方で割り切れる場合は、「Fizzbuzz」を出力します。 例 使用[0-9]、 [AZ]と[AZ]数字として (例を短くするために、最初の10個の値のみを含めました。通常、各シーケンスにはさらに4990項目あります) 入力: 10(「フィズ」= 6および「バズ」= 7) 出力: 1、2、3、4、5、フィズ、バズ、8、9、10 入力: 2(「フィズ」= 2および「バズ」= 4) 出力: 1、Fizz、11、Fizzbuzz、101、Fizz、111、Fizzbuzz、1001、Fizz (それらがどのように機能するかをよりよく示すために、以下の最初の50の値を含めました) 入力: 55( 'Fizz' = =および 'Buzz' = =)2810281028_{10}s55s55s_{55}2210221022_{10}m55メートル55m_{55} 出力:1、2、3、4、5、6、7、8、9、a、b、c、d、e、f、g、h、i、j、k、l、バズ、n、o、 p、q、r、Fizz、t、u、v、w、x、y、z、A、B、C、D、E、F、G、H、I、J、K、L、M、N …
10 code-golf  math  binary 

8
左中央右(LCR)コードゴルフ
パーティーで、ゲームLCRを紹介されました。スキルがなく、ランダムなチャンスしかないので、今は素晴らしいゲームではありません。でも、それでコードを書くことができると思ったので、Rでゲームをモデル化する簡単なプログラムを作りました。 ゲームのルールがWikipediaから変更され、私たちのプレイ方法に一致しました: 各プレイヤーは少なくとも3つのチップを受け取ります。プレーヤーは順番に3つの6面サイコロを振って、それぞれに片側に「L」、「C」、「R」と残りの3面に1つのドットが付いています。プレーヤーは、投げられた「L」または「R」ごとに、左または右にそれぞれ1つのチップをプレーヤーに渡す必要があります。"C"は、チップが中心(ポット)であることを示します。ドットは効果がありません。 プレーヤーのチップが3つ未満の場合でも、ゲームに残っていますが、チップの数は、3つすべてをダイスに振るのではなく、自分のターンにダイスを振る数です。チップが0のプレイヤーは、自分のターンにサイコロを渡しますが、他のプレイヤーからチップを受け取り、それに応じて次のターンを取ることができます。勝者はチップを中央に置いた最後のプレーヤーです。 コンテスト:プレーヤーの数と開始チップの数を入力し、LCRのゲームをシミュレーションして、各プレーヤーがロールした後のゲームの状態を示す、選択した言語でプログラムを作成します。 たとえば、ゲームは次のように出力されます。 [[[3,3,3,3],0],[[1,4,3,4],0],[[1,4,3,4],0],[[1,4,1,4],2],[[1,4,1,2],4], [[0,4,1,3],4],[[0,3,2,3],4],[[0,3,0,3],6],[[0,3,1,1],7],[[0,3,1,1],7], [[2,0,1,1],8],[[2,0,0,1],9],[[2,0,0,0],10],[[0,1,0,0],11], [[1,0,0,0],11],[[1,0,0,0],11],[[1,0,0,0],11],[[0,0,0,0],12]] ht:ジョナサンアラン 出力はこのように正確である必要はありませんが、サイコロの目、各プレーヤーのチップ数、および各ターンのセンターのチップ数を簡単に見分けることができます。 それはコードゴルフなので、最短のコードが勝ちます。
10 code-golf  random 


9
時空を超えて
前書き: 3つの空間次元について:一般的に、我々は通常、4次元の話x、yとz。1つの時間ディメンション。しかし、この挑戦のために、我々としても3への時間ディメンションを分割します:past、present、とfuture。 入力: 2つの入力リスト。1つは整数x,y,z座標を含み、もう1つは整数年を含みます。 出力: 自分で選択した4つの異なる一定の出力の1つ。1つは出力を示しますspace。1つは出力を示しますtime。1つは出力を示しますboth space and time。1つは出力を示しますneither space nor time。 3つの次元すべてについて整数タプルの差が0でない場合は、3つの空間次元すべてに行ったことを示します。 過去に少なくとも1年、将来に少なくとも1年、および現在の年に等しい少なくとも1年がある場合(現在の場合)、3つの時間ディメンションすべてに移動したことを示します。 例: 入力: 座標リスト:[{5,7,2}, {5,3,8}, {-6,3,8}, {5,7,2}] 年リスト:[2039, 2019, 2018, 2039, 2222] 出力: 定数space どうして?座標です。それらはすべて同じではないので、空間の次元を調べました。座標です。それらはすべて同じではないため、空間の次元も調べました。座標です。それらはすべて同じではないため、空間の次元も調べました。 現在の年はです。これまでに年はないので、時間ディメンションを訪問しませんでした。 あり、我々は訪問しなかったので、年のリストに存在するには、時間ディメンションを。()の 上には複数の年があるので、時間の次元にも行きました。x[5,5,-6,5]xy[7,3,3,7]yz[2,8,8,2]z2018past2018present2018[2039, 2019, 2039, 2222]future 3つのspace次元すべてを訪れましたが、3つの次元のうちの2つだけを訪れたのでtime、出力は(の定数)のみになりますspace。 チャレンジルール: 4つの可能な状態には、4つの異なる一定の出力を使用できます。 入力は適切な形式にすることができます。座標リストは、タプル、サイズ3の内部リスト/配列、文字列、オブジェクトなどにすることができます。年数のリストは、バイト数に役立つ場合は整数の代わりに日付オブジェクトのリストにすることもできます。 x,y,z座標は整数になると想定できるため、浮動小数点10進数を処理する必要はありません。いずれもx、y及び/又はz座標は、しかし、負の値とすることができます。 入力リストを事前に注文することはできません。入力リストは、テストケースに表示される順序である必要があります。 すべての年の値が範囲内になると想定できます[0,9999]。すべての座標が範囲内にあると想定できます[-9999,9999]。 現在の年を取得する方法が言語にない場合でも、このチャレンジを実行したい場合は、追加の入力としてそれを受け取り、回答を(非競合)とマークすることができます。 一般的なルール: これはcode-golfなので、バイト単位の最短の回答が優先されます。 コードゴルフ言語では、コードゴルフ言語以外の言語で回答を投稿しないようにしないでください。「あらゆる」プログラミング言語について、可能な限り短い答えを考え出すようにしてください。 デフォルトのI / Oルールを使用した回答には標準ルールが適用されるため、STDIN / STDOUT、関数/メソッドを適切なパラメーターで使用し、戻り値の型の完全なプログラムを使用できます。あなたの電話。 …

5
阿弥陀如来
日本や東アジアの文化に触れたことがあるなら、あみだくじゲームにきっと出会うことでしょう。 以下のようウィキペディアは説明して、それが紙の上に描かれた宝くじの一種であり、ランダムにN項目の順列を選択するために使用しました。 たとえば、N人に開始シーケンスをランダムに割り当てたり、N人にN賞をランダムに割り当てたりするために使用できます。 ゲームが順列を表す理由を理解するコツは、すべての水平ストローク(「レッグ」と呼ばれる)が2つのアイテムを所定の位置で交換することを認識することです。 同じWikipediaのページでも、N個の項目の順列Pはそれぞれ無数のアミダクジ図に対応していると説明されています。水平ストローク(脚)の数が最も少ないものは、その特定の順列Pの「素数」と呼ばれます。 あなたの仕事は、2つ以上の縦線(この例では6)のアミダクジ図を次の形式(文字を除く)で受け取ることです。 A B C D E F | | | | | | |-| |-| |-| | |-| |-| | | | | | |-| | |-| |-| | | | |-| |-| | | |-| | | |-| | |-| | |-| |-| | …

15
再帰的な頭字語を見つける
前書き 再帰的頭字語は、例えば、含まれているか、それ自体を意味する頭字語である。 Fishための再帰的頭字語であり得るFish is shiny heroことも頭字語自体が含まれて注意してください。別の例はHi-> Hi iglooです。またはppcg paints->ppcg paints cool galaxies pouring acid into night time stars したがって、基本的に、各単語の最初の文字が最初の単語を表す場合、文は再帰的な頭字語です。 チャレンジ スペース文字で区切られた1つ以上の単語の文字列を受け取り、再帰的な頭字語を出力するか、それが不可能な場合は空の文字列を出力するプログラムを作成します。例えば、のような文字列のための再帰的頭字語を作ることは不可能であるppcg elephantあなたが取ることによって開始するためpにppcg、次に取った後、頭字語にそれを追加することeからelephant。しかし、頭字語は現在「pe ..」と綴り、「pp ..」と矛盾するため、今では矛盾があります。これは、たとえばにも当てはまりhiます。あなたはhfrom をとりますhiが、文はこれで終わり、スペルアウトする文字はなくなり、一致しないhiものだけが残ります。hhi。(文字列には、頭字語の文字数以上の単語が必要です) 入力と出力は大文字と小文字を区別しません 制限事項 プログラムに入力されたものはすべて有効な英単語になります。ただし、有効な英語の単語も出力する必要があります(データベースを使用するか、26文字ごとに単語を保存できます)。 標準の抜け穴とデフォルトのIOルールが適用されます テストケース hi igloo -> hi ppcg paints -> (impossible) ppcg paints cool giraffes -> ppcg ppcg paints cool galaxies pouring acid …
10 code-golf  string 

13
乗算と除算
値xを指定すると、元のすべての桁を保持したまま、xで乗算および除算できる、yより大きい最小の数値が検出されます。 新しい番号は数字を失いません。 新しい数字は数字を獲得しません。 例えば: 入力:x = 2、y = 250000 オリジナル:285714 部門:142857 乗算:571428 285714がyより大きいため、これは当てはまります。次に、xで割ると142857になり、xを掛けると571428になります。どちらのテストでも、285714の元の数字はすべて存在し、余分な数字は追加されていません。 ルール Xは2または3である必要があります。これより高いと計算に時間がかかりすぎるためです。 Yはゼロより大きい整数である必要があります。 最短のコードが優先されます。 テストケース これらはテストが最も速いため、私の最も一般的なテストケースです。 x = 2、y = 250000 = 285714 x = 2、y = 290000 = 2589714 x = 2、y = 3000000 = 20978514 x = 3、y = 31000000 = 31046895 x = 3、y …
10 code-golf  number 

1
チェッカーチェッカー
このチャレンジの目標は、移動がイングリッシュチェッカーの移動かどうかを判断することです。 この課題では、8x8ボードを使用します。動かされた駒は、対角線方向にのみ動くことができる男性(キングではない)として扱われるべきです。ボードには0個以上の黒い部分と1個以上の白い部分があります。現在、白い部分が1つ移動しています。真後ろの正方形が空の場合、白い部分はその前にある1つの黒い部分に斜めにジャンプできます。対角線の前に斜め方向の別の黒い部分がある場合、その位置からさらにジャンプすることができます。キャプチャは必須であるため、利用可能なジャンプを行わないことは違法です。ただし、ジャンプの数を最大化する経路を取ることは必須ではありません。基本的に、これはジャンプをし、終了位置から別の可能なジャンプがある場合、その動きは違法であることを意味します。ピースの位置には、次の番号付けスキームを使用します。 ルール 入力: 黒い部分を表す数値のリスト。 白い部分を表す数字のリスト。 白い部分の開始位置 白い部分の終了位置 出力: 移動が有効な場合は真の値、それ以外の場合は偽の値 白い部分が常に開始位置を占めると想定できます。 便利な場合は、入力3を受け入れる代わりに、ホワイトピースリストの最初のホワイトピースに開始位置が含まれると想定できます。 標準的なコードゴルフ規則。バイト数が最も少ない。 テストケース 説明のために、Oは開始位置、Xは終了位置、Bは黒い断片、Wは白い断片です。 Black pieces: [] White pieces: [5] Move: (5, 1) Output: True Single move no jump X _ _ _ O _ _ _ B: [6] W: [9] M: (9, 2) O: True Single jump _ …

14
1と0のこの数列でパターンを見つける
これらの1000の数値を生成する最短のプログラムまたは関数、またはそれらで始まるシーケンス(0または1インデックス付き)を記述します。 [0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, …

26
3つの整数を取り、整数とアルファベット文字のリストを返す関数
チャレンジ 入力としてa、3つの正の整数、、bおよびcを使用します。これらの整数を使用して、最初にの手順で、範囲[0, c](両端を含む)にシーケンスを作成しますb。たとえば、のa=4, b=2, c=100場合、シーケンスはになります[0,2,4,...,96,98,100]。 で割り切れるこのシーケンスのすべての数値についてa、小文字の次の文字に置き換えます。「a」で始まり、「z」に達した後、「a」に折り返します。 例: 入力:a=4, b=2, c=100 出力:a2b6c10d14e18f22g26h30i34j38k42l46m50n54o58p62q66r70s74t78u82v86w90x94y98z チャレンジルール: あなたはそれを取ることができるa、bとcどこ、唯一の正の整数ですb ≤ a ≤ c。 はのa倍数であると想定できbます。 あなたcはで割り切れると仮定することができbます。 推奨される出力は、上記のように単一の連結された文字列ですが、リスト/配列も許容されます。 テストケース: Input: a=4, b=2, c=100 Output: a2b6c10d14e18f22g26h30i34j38k42l46m50n54o58p62q66r70s74t78u82v86w90x94y98z Input: a=9, b=3, c=174 Output: a36b1215c2124d3033e3942f4851g5760h6669i7578j8487k9396l102105m111114n120123o129132p138141q147150r156159s165168t174 Input: a=10, b=2, c=50 Output: a2468b12141618c22242628d32343638e42444648f Input: a=25, b=1, c=25 Output: a123456789101112131415161718192021222324b Input: a=6, b=6, c=48 Output: …

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