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

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

8
数値を三角形に分解します
整数所与N、(ここで、最大の三角数の和へと分解のT mが表すMを三角数、または1からの整数の和第M次のように)。 一方、N> 0、 最大可能三角番号検索のT mは、そのようなことのT M ≤N 。 nの三角分解表現にmを追加します。 nからT mを引きます。 たとえば、44の入力は8311の出力を生成します: 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 = 36 <44ですが、1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 = 45> 44です。 …

13
入力を含むクインを印刷します
仕事 あなたが唯一の文字からなる入力中の文字列与えられますaにしz、入力が正規表現にマッチしますすなわち/^[a-z]*$/。 出力は同じ言語の完全なプログラムである必要があり、そのソースコードには入力が含まれており、適切なものです。 例 プログラムは入力abcと出力を受け取ります。 ...abc... 上記は、入力も出力も行わない同じ言語の完全なプログラムである必要があります。 ...abc... すなわち、それ自体を出力します。 得点 これは、コードゴルフ。バイト単位の最短回答が優先されます。 参照資料 適切な馬とは何ですか?
15 code-golf  quine 

1
ライブラリを検索するcode-golferの方法
チャレンジ: 私の音楽コレクションには何千もの曲があり、幸運なことに、私のお気に入りのプレーヤーには検索機能があります。また、素晴らしい思い出があります。コレクションのすべての曲のタイトルを思い出すことができます。しかし、私はとても怠け者で、タイプするのが好きではありません。それぞれの余分なキーストロークは面倒です! 1曲を分離するために検索する必要がある最短文字列は何ですか?検索時に入力を最小限に抑えるために使用できるキーのリストを記憶してください。 これはcode-golfなので、最短のコードが優先されます。 ルール: 曲のタイトルの入力リストが与えられたら、次の制約に従って検索キーのリストを生成します。 各曲のタイトルには検索キーが必要です。 出力リストの文字の総数は、できるだけ少なくする必要があります。 私の好きな音楽プレーヤーはfoob​​ar2000です。 検索機能では大文字と小文字は区別されません。(appleはと同じですaPpLE)。 各検索キーは、スペースで区切られた任意の順序の1つ以上の「単語」で構成する必要があります。 各単語は、対応する曲のタイトルのサブストリングである必要があります。 同じ部分文字列が複数回指定されている場合、対応する曲のタイトルで何度も発生する必要があります。 部分文字列自体にスペースが含まれる場合、その部分文字列を引用符で囲む必要があります。 ヒント: 多くの場合、一部の曲のタイトルには、ルール2を満たす複数の検索キーがあります。このような場合、いずれかのキーが機能しますが、すべてをリストするとブラウニーポイントが得られます。 入力リストはASCII文字のみであると想定できますが、ブラウニーポイントはUTF-8互換性のために与えられます。 ルール3は従うのが難しかったですか?仕組みは次のとおりです。 コードスニペットを表示 +----------------------+ +--------+ +----------------+ +------------------------------------+ | Input | | Output | | Statistics | | Explanation | |----------------------| |--------| |----------------| |------------------------------------| | | | Search | | Key | # of | …

10
チャコールでのゴルフのヒント
木炭は、ASCIIアートの課題に特化したASCII専用およびDLoscによって作成された言語です。 チャコールでゴルフをするためのヒントはありますか?明らかに、すべてではないにしてもほとんどの言語に適用できるものではなく、特に炭に関連するヒントを探しています。
15 code-golf  tips 

30
一時停止
課題は、入力を印刷し、任意の時間待機し、入力を印刷し、最初に待機した時間の2倍の時間待機し、再度入力を印刷することです。最初の遅延は1時間未満である必要があり、後続の遅延の精度は+/- 5%でなければなりません。それ以外は、遅延時間に制限はありません。 例: 入力:hi。 出力:hi(1msポーズ)hi(2msポーズ)hi(4msポーズ)hi(8msポーズ)hi(16msポーズ)など 許可されているもの: hi(1分間の休止)hi(2分間の休止)hi(4分間の休止)hi(8分間の休止)hi(16分間の休止)など 入力はプログラムの開始時に指定する必要があり(STDIN、コマンドラインパラメーター、関数パラメーターなど)、文字列になります。 初期遅延を0にすることはできません。
15 code-golf  string  date 

4
Sp | Lit wo(r)dS、S(P)lit wO | rds
m | Y bR | ainはWe | iRdです。F(o)RT(h)E La | sT fi(v)e YE | ars O | R s | o、(I)ha | ve C(u)T wO | rds in h(a)lf wh | En (I)s(e)e Th | em。Wh | EN Do |を始めたので、To | oK a meN | TaLの努力-B(u)TIはほとんどN(o)Tではありません。N(o)w、私は私の頭の後ろにあります、a(n)dはほとんどありません|それはありません。しかし、これは大きな挑戦だと思いました。 定義 このチャレンジでは、サンセリフ体のフォントでの幅の判断に基づいて、各文字にポイントスコアが与えられます。この幅を使用して、単語を等しい幅の2つの半分にカットします。このチャレンジが使用する文字は、大文字と小文字のアルファベット、アポストロフィ、およびハイフンです。 Width Characters …
15 code-golf  string 

6
キーボードをシミュレートする
キーボードに問題があります(ブラウザに問題がある可能性が高い)。新しいテキストフィールドをクリックして、すべてのテキストを入力し始めると、逆方向に出てくることがあります。非常に短い時間の後(チャレンジのために10ミリ秒と言います)、再び前方入力を再開します。入力を開始しても最初はカーソルが動かないため、すべての文字がテキストフィールドの先頭に挿入されます。 たとえば、python入力pyt中に最初の10ミリ秒で入力した場合、結果は次のようになります。 hontyp 仕事 あなたの仕事は、この動作をできるだけ少ないバイトでシミュレートすることです。 入力 合理的な方法で入力を行うことができます。ただし、入力を2つの別個のフィールドとして使用することはできません。プログラムが入力を許可し始めると、10ミリ秒の遅延が始まります。つまり、入力が許可される前に前処理を行う必要がある場合がありますが、10ミリ秒にはカウントされません。 平均的に10ミリ秒であり、合理的に指定されたコンピューターでは1ミリ秒以上の時間の1%以内でオフになっていれば、タイミングに多少の寛容さが認められます。 出力 適切な方法で文字列を出力できます。ユーザーが入力しているときにライブで更新するか、入力を終了した後に結果を出力することができます(改行またはファイルの終わり^D)。 テストケース これらのいくつかは、このCMCによって19番目のバイトで生成されました First 10 | after | result bra in-flak in-flakarb ap ple plepa code- golf golf-edoc no ne neon we st stew ai med media draw back backward
15 code-golf  string  date 

2
直線を描く
直線を含む単純なASCIIアートイメージを描画します。これとこれに似ていますが、仕様が異なります。 入力 コードに合わせてこの入力形式を変更できます。 整数 width 整数 height 整数 x0 整数 y0 整数 x1 整数 y1 出力 ピクセルからのラインを含む、指定された幅と高さの塗りつぶされたASCIIアートイメージ (x0, y0)への(x1, y1)。 テキスト出力の標準形式はすべて受け入れられますが、組み込みの線描​​画関数は使用しないでください。 詳細 線は、単一の印刷可能な文字(など#)を使用して描画する必要がありますが、背景には別の文字(.)が使用されます。画像サイズが正しいように、必要な末尾の文字を印刷する必要があります。 ピクセル座標は0インデックスまたは1インデックスにすることができ、画像の任意のコーナーから開始できます。線は、開始ピクセルと終了ピクセルの中心を結ぶ幅0のサブピクセル線を想像して描画する必要があります。線が入るすべてのピクセルを塗りつぶす必要があります。 勝ち 通常のコードゴルフ規則。最短のコードが優先されます。 例 IN: width, height, x0, y0, x1, y1 IN: 7, 6, 0, 0, 6, 5 OUT: .....## ....##. ...##.. ..##... .##.... ##..... IN: 3, …

23
リスト内のセットの出現回数を数える
空でない文字列のセットと文字列のリストが与えられた場合、リスト内でそのセットが何回出現するか、つまり、リストのアイテムでセットを作成できる回数を調べます。リストのすべての要素は一度しか使用できません。 ヒント:セットは、一意のアイテムの順序付けられていないリストです。 デフォルトの入出力ルールが適用されます。 外部ライブラリは許可されていません。コンパイラ/インタープリターの標準ライブラリは問題ありません。これはコードゴルフであるため、最短の解決策が重要です。 テストケース: ["apple", "banana"], ["apple", "pear", "apple", "banana", "banana"] => 2 ["apple", "banana"], ["apple", "pear", "apple", "banana", "apple"] => 1 ["apple", "banana", "pear"], ["apple", "banana", "kiwi", "apple"] => 0 ["coconut"], [] => 0 編集:入力パラメーターがローカルスコープで定義されていることを示す文を削除しました。これは、上記でリンクされているデフォルトのIOルールと矛盾します。

12
バイナリブランチ
2進数が与えられた場合、あなたの仕事はその深さ2の「分岐」を作成することです。 たとえば、0入力として指定された場合、これを正確に出力する必要があります。 /000 /00 / \001 0 \ /010 \01 \011 これは、ブランチがどのように作成されるべきかをかなり自明であるはずです。深さ2は、最大2桁までの数の分岐を計算することを意味します。また、上にゼロを、下に1を使用して、分岐を順番に計算します。 その他のテストケース: 0 /000 /00 / \001 0 \ /010 \01 \011 1 /100 /10 / \101 1 \ /110 \11 \111 00 /0000 /000 / \0001 00 \ /0010 \001 \0011 01 /0100 /010 / \0101 01 \ …

7
ほぼ完璧なナンバープレートを検出する
注:これは、@ Willbeingによる特定の長さの完璧なプレートの数を数えることがこの質問に触発されたものですが、わずかに異なります。 テキストが次の条件を満たす完璧なナンバープレートを呼び出します。 文字で構成され、大文字([A-Z])または数字([0-9])のいずれかです。 英語のアルファベットの文字の位置を合計すると、1のインデックスが付けられます(つまり:)A=1,B=2,...,Z=26整数nが得られます 各桁のチャンクを取得し、それらを合計してからすべての結果を乗算すると、同じ結果nが得られます nは完全な正方形です(例:49 (7 2)、16 (4 2)) ほぼ完全なライセンスプレートは、ことを除いて、完璧なナンバープレートのための条件を満たしているnがあるではない完全な方形。 入力 ナンバープレートのテキストを表す文字列。ハードコーディングを除き、標準形式の入力として使用されます。 出力 与えられた文字列がほぼ完璧なナンバープレートを表す場合、真の値(例:True/ 1)を返し、そうでない場合は偽の値(例:False/ 0)を返します。この抜け穴は厳密に禁止されていることに注意しながら、標準形式の出力はすべて受け入れられます。 例 licence plate -> output A1B2C3 -> 1 A + B + C = 1 + 2 + 3 = 6 1 * 2 * 3 = 6 6 is not a …

2
最小限のマッチ棒で数学を作る
メタバックグラウンド これはPuzzlingの質問として設定されており、即座の反応は「まあ、誰かがそれをコンピューターで解決するだけです」でした。これを解決するプログラムがどれほど複雑であるかについての議論がありました。「このプログラムの複雑さ」はcode-golfの定義であるため、PPCGで問題を解決できるかもしれません。 バックグラウンド マッチ棒の方程式は、基本的に通常の数学的方程式であるが、数字や演算子は、テーブルの上にマッチ棒を配置することによって物理的に構築されます。(ここでのマッチスティックの主な関連機能は、かなり堅く、一定の長さを持っていることです。時々、綿棒など、他のオブジェクトを代わりに使用します。) このチャレンジでは、マッチスティックの配置方法に関する特定のルールを定義する必要はありません(リンクされたチャレンジのように)。むしろ、指定された数に評価される式を表すために必要なマッチスティックの数に注意するだけです。 タスク 使用できる数字のアルファベットと数学演算子は次のとおりです。それぞれにマッチスティックのコストがあります。 0、6本のマッチ棒 1、2本のマッチ棒 2、5本のマッチ棒 3、5本のマッチ棒 4、4本のマッチ棒 5、5本のマッチ棒 6、6本のマッチ棒 7、マッチ棒3本がかかる 8、7本のマッチ棒 9、6本のマッチ棒 +、2本のマッチ棒 -、マッチ棒1本 ×、2本のマッチ棒 (あなたは表すことができる×よう*必要に応じて、ほとんどのエンコーディングでは、非ASCII文字を使用する必要がないようにするために、あなたのプログラムの出力に×占める以上のバイト*、と私はほとんどのプログラムは、この余裕を利用したいということを想像して) (負の整数を入力として(任意の妥当な手段を介して)受け取り、その整数を出力として(再び任意の妥当な手段を介して)評価する式を生成するプログラムを作成する必要があります。また、式は自明である必要があります。それは、少なくとも一つのオペレータが含まれている必要があり+、-または×。最後に、出力する式は、そうでなければ仕様に準拠するすべての出力の中で、マッチ棒の総コストの観点から最も安価(または最も安価に結び付けられる)でなければなりません。 明確化 行に複数の数字を出力することで、複数の数字を作成できます(たとえば11-1、有効な出力です10)。正確に言うと、結果の数値は10進数で解釈されます。この種の連結は、中間結果に対して機能する操作ではありません。元の式に現れるリテラル数字のみ。 この課題のために。+、-と×中置演算子です。彼らは左と右への議論が必要です。+5またはのようなプレフィックス位置でそれらを使用することはできません-8。 括弧(または優先順位を制御する他の方法)がありません。式は、一般的なデフォルトの優先順位規則に従って評価されます(乗算が最初に発生し、次に加算と減算が左から右に評価されます)。 上記以外の数学演算子や定数にはアクセスできません。「ラテラル思考」ソリューションは、Puzzlingでしばしば受け入れられますが、コンピューターにそれ自体を考え出すことを要求することは意味がありません。PPCGでは、ソリューションが正しいかどうかを客観的にすることが望ましいです。 通常の整数オーバーフロールールが適用されます。ソリューションは、すべての整数がデフォルトで制限されていない仮想バージョン(または実際のバージョン)の任意の大きな整数で動作できる必要がありますが、実装によりプログラムが実際に失敗する場合それほど大きな整数をサポートしていなくても、ソリューションは無効になりません。 同じ数字または演算子を複数回使用する場合、使用するたびにマッチスティックコストを支払う必要があります(明らかに、テーブル上の2つの異なる場所で同じ物理的なマッチスティックを再利用できないためです)。 時間制限はありません。ブルートフォースソリューションは許容されます。(ブルートフォースよりも高速なソリューションがある場合は、それが長くても自由に投稿してください。代替アプローチがどのように比較されるかを見るのは常に興味深いです。) コードの説明を書く必要はありませんが、それは良い考えです。コードゴルフソリューションは、読むのが非常に難しい場合があります(特に、記述されている言語に精通していない人にとっては)、そしてその仕組みを理解しない限り、ソリューションを評価する(したがって投票する)のは難しい場合があります。 勝利条件 コードゴルフの挑戦として、より少ないバイトでの答えはより良いと考えられます。ただし、いつものように、さまざまなアプローチで回答を投稿したり、特定の言語で回答を投稿したりしても、特定の他の言語よりも冗長である場合があります。ゴルフの目標は、特定のプログラムを最適化できる範囲を実際に確認することであり、この方法で物事を行うと、最適化する多くの潜在的なプログラムが得られます。だから誰かが完全に異なるアプローチまたはまったく異なる言語を使用してソリューションを提出し、はるかに短い答えを得たとしても、落胆しないでください。あなたの答えがより最適化されており、より多くのスキルを示しているのかもしれません。PPCGの投票者はしばしばそれを高く評価しています。

16
奇数または偶数
これは回文であることに気づきましたか? 入力 非負整数またはそれを表す文字列 出力 数の2つのプロパティを表す4つの可能な出力: それは回文ですか トリッキーな#2 Tricky#2 property 数値が回文ではない場合、このプロパティは「最初と最後の数字は同じパリティを持っていますか?」という質問に答えます。 数字が回文の場合、このプロパティは「最初の数字と中央の数字は同じパリティを持っていますか?」という質問に答えます。偶数の場合、中央の数字は中央の2桁の数字の1つです。 例 12345678-> False False これは回文ではありません。最初と最後の数字はパリティが異なります 12345679-> False True パリンドロームではなく、最初と最後の桁が同じパリティを持っています 12344321-> True False これは回文です。最初の数字1と中央の数字4のパリティは異なります 123454321-> True True これは回文です。最初の数字1と中央の数字5は同じパリティを持っています PS 出力のタイプとフォーマットを決定します。4つの異なる値を指定できます。答えにそれを記載してください。

2
SchläfliConvex Regular Polytope Interpreter
バックグラウンド シュレーフリ記号は正規ポリトープとテッセレーションを定義するフォーム{P、Q、R、...}の表記です。 Schläfliシンボルは再帰的な記述であり、p側の正多角形から{p}として始まります。たとえば、{3}は正三角形、{4}は正方形などです。 各頂点の周りにq個の正多角形の多角形面を持つ正多面体は、{p、q}で表されます。たとえば、キュ​​ーブには各頂点の周りに3つの正方形があり、{4,3}で表されます。 各エッジの周りにr {p、q}個の正多面体セルがある通常の4次元ポリトープは、{p、q、r}で表されます。たとえば、テッセラクト{4,3,3}には、エッジの周りに3つのキューブ{4,3}があります。 一般に、通常のポリトープ{p、q、r、...、y、z}は、すべてのピークの周りにz {p、q、r、...、y}ファセットを持ちます。ここで、ピークは多面体の頂点です。 4ポリトープのエッジ、5ポリトープの面、6ポリトープのセル、nポリトープの(n-3)面。 通常のポリトープには、通常の頂点図形があります。通常のポリトープ{p、q、r、... y、z}の頂点の図は{q、r、... y、z}です。 通常のポリトープは、五角形のように五角形の頂点で表されるが交互に接続されたシンボル{5/2}の星形の多角形要素を持つことができます。 Schläfliシンボルは、構造の角度欠陥に応じて、有限凸多面体、ユークリッド空間の無限テッセレーション、または双曲線空間の無限テッセレーションを表すことができます。正の角度の欠陥により、頂点の図形がより高い次元に折り畳まれ、ポリトープとしてループ自体に戻ります。ゼロ角欠陥は、ファセットと同じ次元の空間をテッセレーションします。負の角度の欠陥は通常の空間には存在できませんが、双曲線空間に構築できます。 コンペ あなたの目標は、Schläfliシンボルを渡すと、凸ポリトープの完全な記述を返すプログラムを作成することです。これはSchläfliシンボルのサブセットにすぎませんが、これは最も単純なシンボルです。他の可能性がなくてもこれは非常に難しい作業であり、ポリトープがテッセレーションの出発点だと思います。この質問のルールは、この結果がAPIであるという考えで設計されたもので、インターネット上でそのようなプログラムを見つけることができませんでした。 プログラムは、次のすべてを達成する必要があります。 プログラムは、有限次元の正規凸ポリトープを生成できなければなりません。2次元では、nゴンが含まれます。3次元ではこれらはプラトニックな固体であり、4次元ではこれにはtesseract、orthoplex、および他のいくつかが含まれます) プログラムは、(a)原点に点を配置するか、(b)すべての点の平均が原点であることを確認する必要があります。向きは関係ありません。全体のサイズは重要ではありません。 プログラムは、4次元オブジェクトの場合、頂点、エッジ、面、および多面体を返す/印刷することを意味する完全な説明を提供する必要があります。これらが報告される順序は重要ではありません。多面体の場合、これはオブジェクトをレンダリングするために必要な情報です。 以下を処理する必要はありません。 テセレーション 双曲線幾何 フラクショナルシュレーフリ記号(非凸) 埋め込みシュレーフリ記号(不均一なタイル) これらのいずれかを行うように求められた場合、エラーを返すことができます。 例:キューブ 入力: 4 3 出力: Vertices 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 …

15
数値をインデックス化する
入力として文字列または整数を指定すると、それをインデックス化する必要があります。 これは、入力を変更する方法です。30043376111例として使用します。 最初に、それぞれの数字の各出現のインデックスの合計を見つけます。 0: 1 + 2 = 3 1: 8 + 9 + 10 = 27 3: 0 + 4 + 5 = 9 4: 3 6: 7 7: 6 次に、新しい整数または文字列を作成します。上記の数字は、インデックスの合計の順になります。複数の数字が同じ合計を生成する場合、小さい数字が大きい数字の前に来ます。 047631 最後に、先行ゼロを削除し、結果を返すか出力します。 47631 インデックス化された入力を返すか出力するプログラムまたは関数を作成する必要があります。 これはcode-golfなので、バイト単位の最短コードが勝ちです! リクエストがあれば、さらにテストケースを追加できます。

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