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

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

19
私のパイは二等分されましたか?
正の整数の空でないリストを取り込むプログラムまたは関数を作成します。"1 2 3 4"またはなどの合理的で便利な形式で入力されていると想定できます[1, 2, 3, 4]。 入力リストの数値は、円グラフ全体のスライスを表します。各スライスサイズは対応する数値に比例し、すべてのスライスは指定された順序でグラフの周囲に配置されます。 たとえば、次のパイ1 2 3 4は次のとおりです。 あなたのコードが答えなければならない問題は、円グラフが今までされてい二分しますか?つまり、円の一方の側から他方の側に完全に直線があり、対称的に2つに分割されていますか? あなたはする必要があり、出力truthyの少なくとも一つの二等分線と出力がある場合に値をfalsy何も存在しない場合、値。 で1 2 3 4例との二分がある4 1と2 3出力truthyであろうように。 ただし、入力の1 2 3 4 5場合は二等分線がないため、出力は偽になります。 追加の例 数値を異なる方法で配置すると、二等分線が削除される場合があります。 例2 1 3 4→偽: 入力リストに数字が1つしかない場合、パイは二等分されません。 例10→偽: 複数の二等分線が存在する場合があります。ゼロ以上である限り、出力は真実です。 例6 6 12 12 12 11 1 12→真実:(3つの二等分線があります) 視覚的に明らかではない場合でも、2分割が存在する場合があります。 例1000000 1000001→偽: 例1000000 1000001 1→真実: (円グラフを生成してくれたnces.ed.govに感謝します。) テストケース …
43 code-golf  math  arithmetic  combinatorics  decision-problem  code-golf  sequence  number-theory  binary  code-golf  number-theory  set-theory  code-golf  hashing  code-golf  game  card-games  code-golf  ascii-art  code-golf  arithmetic  array-manipulation  jelly  code-golf  string  array-manipulation  code-golf  sorting  code-challenge  code-golf  number  date  binary  code-golf  arithmetic  code-golf  math  number  linear-algebra  polynomials  code-golf  ascii-art  code-golf  grid  decision-problem  code-golf  string  combinatorics  code-golf  string  kolmogorov-complexity  arithmetic  date  code-golf  number  data-structures  code-golf  ascii-art  kolmogorov-complexity  code-golf  string  ascii-art  code-golf  ascii-art  kolmogorov-complexity  code-golf  array-manipulation 

10
ジグザジフ行列
JPEG標準は、圧縮アルゴリズムの一部として、交互の方向の対角線に沿って行列を展開してベクトルにします。 あなたのタスクは、マトリックス(必ずしも正方形ではない)を取り、展開された形で返すことです。例として: [1 2 3 4 5 6 7 8 9 1 2 3] 降るべきです [1, 2, 5, 9, 6, 3, 4, 7, 1, 2, 8, 3] ルール 行列要素はより小さい正の整数であると仮定でき10ます。 プログラムまたは関数を作成し、STDIN(または最も近い代替)、コマンドライン引数または関数引数を介して入力を取得し、STDOUT(または最も近い代替)、関数の戻り値または関数(out)パラメーターを介して結果を出力できます。 入力マトリックスは、便利で曖昧さのないネストされたリストまたは文字列形式で、または両方のマトリックス次元と共にフラットリストとして指定できます。(または、もちろん、あなたの言語がそれらを持っているなら、マトリックス型として。) 出力ベクトルは、任意の便利で明確なフラットリストまたは文字列形式にすることができます。 標準のコードゴルフ規則が適用されます。 テストケース [[1]] => [1] [[1 2] [3 1]] => [1 2 3 1] [[1 2 3 1]] …

18
ユニバーサルスプーキーミームトランスレーター
前書き エイリアンは、私たちと同じくらいミームを愛しています。ただし、これまでに遭遇したすべてのエイリアンレースには、独自のバージョン2spooky4me(次の質問を参照)と同等のバージョンがありますが、いくつかのバリエーションがあります。惑星CUTE1fの住民は大量のスプークを処理できないため、優先される1spooky2meスプークはです。一方、skeletor7のメマーはスプークが好きなので、使用する傾向があります9spooky11me。 チャレンジ ミームの翻訳は大変な仕事なので、あなたはこれらの人々がmemenetに正しくアクセスするのを助けるために、普遍的なミーム翻訳者を書くことを任されました。あなたのプログラムは、ミームとそのミームの数字列に適用する変換を受け入れて、異なる惑星の住民に適切なものにします。 入力 プログラムは2つの文字列入力を受け取ります。 入力ミーム(例2spooky4me)。一致し[a-zA-Z0-9]+ます。 (例えば、それに適用する変換+1から行くために、2spooky4meに3spooky5me)。マッチ[+\-*/^]\d+(あなたが受け入れなければならない+、-、*、/、および^演算子として、関係なく、あなたの言語でのネイティブ表現)。 出力 プログラムは、入力ミームの数字シーケンスに適用された変換を使用して、文字列出力(標準出力または同等のものに出力)を返す必要があります。奇妙な出来事では、これまでに遭遇したすべての種族が分数のものよりも整数のミームを好むため、これらの変換は整数演算を実行する必要があります(たとえば、1spooky1me /2結果は0spooky0me)。 例 標準の算術演算が適用されます: Input: 2spooky4me +1 Output: 3spooky5me Input: 2spooky4me -1 Output: 1spooky3me Input: 2spooky4me *15 Output: 30spooky60me Input: 10spooky900me /5 Output: 2spooky180me 数字列は整数です。整数の切り捨ては、次のような場合に発生するはずです。 Input: idontunderstandmemes3 /2 Output: idontunderstandmemes1 入力には数字列がない場合があります。 Input: notreallyafunnymeme *100 Output: notreallyafunnymeme 選択した言語のネイティブ操作ではない場合でも、累乗をサポートする必要があります。 Input: 2spooky4me ^3 Output: …

9
ルービックとのサイクリング
ルービックキューブを無造作にひねりながら、息子は解かれた状態に戻っていることに気付きました。彼はこれが最初はブードゥー教の魔法だと思っていたと思いますが、同じ動きのシーケンスを繰り返し続けると、常に元の状態に戻ると説明しました。最終的に。 もちろん、子供の頃、彼は自分で試してみて、トリッキーだと思った「ランダムな」シーケンスを選択する必要がありました。彼は10回ほど繰り返した後にトラックを失い、何回それを繰り返さなければならないかを尋ねました。彼が使用しているシーケンスを知らなかったので、私は知らなかったが、調べるためのプログラムを書くことができると彼に言った。 ここがあなたの出番です。もちろん、私はただ何かを上げることができますが、彼は自分でそれを入力したいと思います。彼はまだ非常に高速なタイピストではないので、可能な限り短いプログラムが必要です。 目的 ターンのシーケンスが与えられた場合、キューブを元の状態に戻すために実行する必要がある最小回数を出力します。これはコードゴルフなので、最小バイトが勝ちます。プログラムまたは関数を作成でき、他のすべての通常のデフォルトが適用されます。 入力 入力は、文字列、リスト、または言語に適した他の形式として取得される一連の移動です。文字列形式の場合は、移動の間にセパレータを自由に使用できます(または使用しません)。 考慮に入れなければならない6つの「基本的な」動きとその逆があります。 R - Turn the right face clockwise L - Turn the left face clockwise U - Turn the up (top) face clockwise D - Turn the down (bottom) face clockwise F - Turn the front face clockwise B - Turn the back …

9
砂時計の挑戦
砂時計 この砂時計には60個の「砂」があり、各部屋を完全に満たします。時計は幅19文字、高さ13文字です。各チャンバーには5列の砂があり、中央に1列の砂を保持できる列があります。上の列には17個の砂、次の砂には15個の砂を保持できます(以下を参照)。砂は1秒間に1枚の割合で底部チャンバーに落ちます。 START 3 SECONDS LATER 38 SECONDS LATER ███████████████████ ███████████████████ ███████████████████ █.................█ 17 █.............. █ 14 █ █ 0 ██...............██ 15 ██...............██ 15 ██ ██ 0 ███.............███ 13 ███.............███ 13 ███....... ███ 7 █████.........█████ 09 █████.........█████ 09 █████.........█████ 09 ███████.....███████ 05 ███████.....███████ 05 ███████.....███████ 05 █████████.█████████ 01 █████████.█████████ 01 …

30
アイデンティティマトリックスの構築
課題は非常に簡単です。入力が整数のn場合、n x n単位行列を出力します。単位行列は、1sが左上から右下に及ぶものです。作成した単位行列を返すまたは出力するプログラムまたは関数を作成します。出力は、2D配列、またはスペース/タブと改行で区切られた数値です。 入出力の例 1: [[1]] 2: [[1, 0], [0, 1]] 3: [[1, 0, 0], [0, 1, 0], [0, 0, 1]] 4: [[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]] 5: [[1, 0, 0, 0, 0], [0, 1, 0, 0, 0], [0, …

3
Game of Lifeをそれ自体で実行するコード
グリッドに配置されたときにConwayのGame of Lifeを実装する、それぞれ幅w文字、高さh文字の2つの長方形のコードブロックを記述します。(wとhは任意の正の整数です) たとえば、2つのコードブロックは次のようになります:(実際のコードではなく、w = 3、h = 2) XX| --+ そして | --+ Game of Lifeの「生きている」セルのように最初のブロックを扱い、「死んだ」セルのように2番目のブロックを扱います。 次に、これらの2つのブロックの複数のコピーを、このグライダーなどのGame of Lifeグリッドを表す大きなプログラムに配置します。 | | | | | --+--+--+--+--+ | |XX| | | --+--+--+--+--+ | | |XX| | --+--+--+--+--+ |XX|XX|XX| | --+--+--+--+--+ | | | | | --+--+--+--+--+ | | | | | --+--+--+--+--+ …

30
本当のスリムな日陰
できるだけ少ないバイト数で次の内容をエコーし​​ます。 I'm Slim Shady. Yes, I'm the real Shady. All you other Slim Shadys are just imitating. So, won't the real Slim Shady please stand up? Please stand up. Please stand up. 次の5つの単語が表示される必要があります正確に一度、あなたのコード内で: I'm Slim Shady real stand

30
ASCII Sunを拡張する
(STDIN /コマンドラインを介して)負でない整数Nを取り込むプログラムを作成します。 Nが0の場合、プログラムは印刷する必要がありますO(ゼロではなく大文字です)。 Nが1の場合、プログラムは印刷する必要があります \|/ -O- /|\ Nが2の場合、プログラムは印刷する必要があります \ | / \|/ --O-- /|\ / | \ Nが3の場合、プログラムは印刷する必要があります \ | / \ | / \|/ ---O--- /|\ / | \ / | \ Nが大きい場合、このパターンはまったく同じ方法で続きます。「日」の8線のそれぞれが適切なのNで作られるべき-、|、/、または\文字。 詳細 プログラムの代わりに、整数を取る関数を書くことができます。この関数は、太陽のデザインを通常どおり印刷するか、文字列として返す必要があります。 あなたはどちらか 末尾のスペースがまったくない、または 末尾スペースが十分にあるため、パターンは完全な(2N + 1)*(2N + 1)の長方形になります。 任意またはすべてのNの出力には、オプションで末尾の改行を含めることができます。 得点 バイト単位の最短コードが優先されます。

30
ETAOIN SHRDLUゴルフ
ショートと挑戦の甘い説明: オフに基づいてETAOIN SHRDLUは、あなたの挑戦は、入力中にその頻度に基づいて、英語のアルファベットの26個の文字を出力し、任意の言語での最短のプログラムや関数を記述することです。 本当に長く、乾燥した完全な仕様: プログラム/関数は、1つ以上の大文字または小文字を含むテキスト文字列を入力として受け取り、句読点、数字、記号、およびその他の非アルファベット文字も含む場合があります。 プログラム/関数は、入力に出現しない回数も含めて、入力に出現する回数に基づいて頻度の高い順に並べた、英語のアルファベットの26の大文字のみを出力する必要があります。 編集:頻度は大文字と小文字を区別せずに計算されますが、出力は大文字でなければなりません。 2つ以上の文字が同じ頻度を持っている場合、それらは任意の順序である可能性があります。 空白などの他の出力は許可されません。 編集7/1/2014:フィードバックに基づいて、このルールを修正しています。許可される他の唯一の出力は、末尾の改行などのオプションの先頭および/または末尾の空白です。他の出力は許可されません。 未定義の動作は、文字を含まない入力に対して許可されます。 勝者は今から7日後に選ばれるので、それらの指を入力してください! 入力例: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent vitae erat velit. Mauris gravida euismod libero ut tincidunt. Phasellus elit dui, consectetur et egestas in, aliquam vitae diam. Donec eget varius ante. Vestibulum cursus diam aliquet, egestas …
43 code-golf  string 

28
速くて、安くて、良い-2つ選択してください
プログラマとして、私たちは皆、「あなたはそれを速くて良いものにすることができますが、安くはありません、あなたはそれを安くて良いものにすることができますが、それは速くありません、またはあなたはそれを速くて安いものにすることができます、それは良くないでしょう。」 この課題のために、カスタムプログラミングサービス用の架空の構成ツールを実装しています。「SELECT ANY TWO」という見出しの3つのチェックボックスのセットをレンダリングする必要があります。 SELECT ANY TWO ☐ FAST ☐ CHEAP ☐ GOOD 2つのアイテムを選択したら、3番目のアイテムを無効にする必要があります。選択した2つのアイテムのいずれかを選択解除すると、すべてのオプションを再び有効にする必要があります。別の言い方をすれば、0個または1個のアイテムが選択された場合、すべてが有効になりますが、2個のアイテムが選択された場合、3番目のアイテムは無効にする必要があります。 特別なコントロールは許可されていません。チェックボックスは、選択した言語の標準チェックボックスである必要があります。たとえば、言語に「CheckBoxList」コントロールがある場合は、使用しないでください。ほとんどのエントリはHTML / jQueryになると想像していますが、それはルールではありません。これはコードゴルフで、最短のエントリーを探しています。 勝者はとても遠い これをカテゴリに分類します。明確な勝者がいくつかいます: jQuery: テキスト「リソース」を除外した場合の100b未満のnderscore、Mr。Tenacity。また、多くの人からインスピレーションを受けたjQueryの概念を紹介するために、Mattに敬意を表するべきです。 Dyalog APL: marinus、別名Mr.Unicodeこれらすべてをどのように入力しますか?短いプログラムを作成する理由がわかります。 PHP: SuperScriptこれは、ルールの最も厳密な解釈に従って、3番目のオプションを選択解除するのではなく、実際に無効にする最短のエントリだと思います。

30
音、任意の音を再生する[終了]
あなたのプログラムは、コンピューターに音、あらゆる音を生成させる必要があります。 最初の有効な回答から10日以内に最短のコードが優先されます。同点がある場合は、より早く提出されたものが勝ちます。 プログラムは、あまり一般的ではない合理的なパソコンで実行する必要があります。 多くの設定に応じて、ポップアップ、メッセージボックスなど(Webページなど)を開いても、音が出る場合と音が出ない場合があります。 間違ったコマンドまたは無効な文字をコンソールに入力して警告ビープ音を受け取っただけでは、コンパイラー/インタープリター/ OSがエラーまたはクラッシュでビープ音を鳴らしたとしてもカウントされません。コードは有効なプログラムでなければなりません。
43 code-golf 

30
すべての非ゼロ整数nに対してf(f(n))= -nとなるような関数fを定義します
この課題は、私が頻繁に使用するプログラミングブログに触発されました。ここで元の投稿を参照してください:プログラミングパズル チャレンジ すべての非ゼロ整数、およびが有理数のセットであるf:Q->Qような関数を定義します。f(f(n)) = -nnQ 詳細 あなたが好みの言語では、定義してください1つの機能やプログラムf、パラメータとして受け入れる1の数nを返すまたは出力1つの数をf(n)。 入力は、言語に最も自然なメカニズム(関数引数、STDINからの読み取り、コマンドライン引数、スタック位置、音声入力、ギャングサインなど)を通じて提供されます。 出力は、関数/プログラムからの戻り値、またはSTDOUTに出力される必要があります。 プログラムの状態や、関数の外部から見えるグローバルメモリ/データを利用しない関数への回答を制限したいと思いますf。たとえば、カウンターをfそのカウントの外にf置いて、何回呼び出されたかをカウントし、このカウントに基づいて否定を行うことは、誰にとってもそれほど難しくありません。決定fは、fの語彙範囲内のデータのみに依存する必要があります。 ただし、この制限は、一部のスタック指向言語またはこれらのタイプのデータまたはスコープを区別しない他のタイプの言語にはおそらく不適切です。この挑戦の精神を維持するために最善の判断をしてください。 得点 一般的なコードのゴルフ規則が適用されます。スコアはソースコードのバイト数です。 最小の答えは、ドメインと共同ドメインfが合理の部分集合であることを必要としますQ。あなたのドメインとの終域制限する場合はf整数にしZ、その後、あなたのスコアは、数の90%の天井であるバイトソースコードでは。 タイブレーク 同点の場合、以下が順番に使用されます。 ソースコードに含まれる印刷可能な非空白記号の数が最も少ない 回答提出の最も早い日時 編集 任意のサイズの数値をサポートする必要はありません。セットZをQ選択した言語のデータ型として解釈してください(通常、それぞれ整数と浮動小数点)。 ソリューションがデータ型の基礎となる構造またはビットパターンに完全に依存している場合、その制限とその使用方法を説明してください。

21
それらすべてを支配する一つの環。それらすべてを含む1つの文字列
目的:厳密に1000未満のすべての正の整数を含む文字列を出力します。 明白な答えは、それらのすべてを連結することであり、2890文字の文字列を作成します(manatworkに感謝)。この種の簡単な答えを避けるには、文字列の長さは1500文字未満でなければなりません。1200文字の文字列を出力する簡単なJavaコードを次に示します。 import org.junit.Test; import java.util.ArrayList; import java.util.List; import java.util.TreeSet; import static org.junit.Assert.assertTrue; /** * Created with IntelliJ IDEA. * User: fab * Date: 05/11/13 * Time: 09:53 * To change this template use File | Settings | File Templates. */ public class AStringToContainThemAll { @Test public void testsubStrings() throws …

2
顔認識
このタスクの目的は、特定の「イメージ」内のすべての顔を識別、クリーンアップ、およびマークアウトすることです。 顔には何がありますか? 面はZxZの正方形で、Zは1より大きい奇数の整数です。左上と右の角と中央は「O」の文字で、下の線は「\」と「/」で十分に囲みます。行の残りを埋める '_'文字。例: 3x3の顔: O O O \_/ 5x5の顔: O O O \___/ 7x7の顔: O O O \_____/ 等 入力 入力はSTDIN上にあり、同じ長さの文字列で構成されます。 出力 出力は、認識可能なすべての顔がクリアされた入力(つまり、目、鼻、口以外のすべての文字が顔の境界内から削除される)およびボックス(+、-、および|文字で囲まれた)でなければなりません。2つ以上の顔が重なる場合は、両方をクリアしてボックス化する必要がありますが、大きな顔を優先する必要があります(上に配置する必要があります)。両方の面のサイズが同じ場合、優先順位は実装者の裁量に任されます。入力に面がない場合、出力は入力と同じである必要があります。 いくつかの例 入力: ******* ******* **O*O** ***O*** **\_/** ******* ******* 出力: ******* *+---+* *|O O|* *| O |* *|\_/|* *+---+* ******* 入力(不完全な顔): ******* ******* **O*O** ******* **\_/** …

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