タグ付けされた質問 「decision-problem」

入力が特定の基準を満たすかどうかを決定し、その決定を表すいくつかのデータを出力する必要がある課題の場合。

6
ピザは公正ですか?
この質問は触発され、逆のです、この1。 デニス(E)、ドアノブ(D)、マーティン(M)、クリス(C)がピザを注文しました。長方形のピザは正方形のピースに分割され、各ピースには意図した食べる人がマークされています。 各文字の0個以上で構成される長方形のピザを与えて、次のことを決定するプログラムまたは関数を作成します。 各人物の各スライスはパス接続されています。これは、同じ文字はすべて互いに直接隣接する必要があることを意味します(斜めの接続はありません)。 1人あたりのスライス数はすべて同じです。 指定されたピザが公正かどうかを示すオプションの末尾の改行を使用して、真偽値を出力する必要があります。 有効なテストケース: DDDDDDDDDDDDMCCCCCCCCCCC DEEEEEEEEEEDMMMMMMMCCCCC DEEEEEEEEEEDMMMCCCCCCCCC DEEEEEEEEEEDMMMMMMMMCCCC DDDDDDDDDDDDMMMMMMMMMMMC DEMC DD EE MC MC EEDDMMMCCC EEEDDDMMCC 無効なテストケース: EDM EDMCCMDE DDDDDDDDDDDDMCCCCCCCCCCC DEEEEEEEEEEDMMMMMMMCCCCC DEEEEEEEEEEMDMMCCCCCCCCC DEEEEEEEEEEDMMMMMMMMCCCC DDDDDDDDDDDDMMMMMMMMMMMC DDMMEECC DMMEECCC バイト単位の最短コードが優先されます。

11
このセットは自然数を表しますか?
集合論では、自然数は通常、純集合としてエンコードされます。これは、空集合または他の純集合のみを含む集合です。 。ただし、すべての純粋なセットが自然数を表すわけではありません。この課題は、特定の純粋なセットが自然数のエンコードを表すかどうかを決定することです。N = { 0 、1 、2 、3 、。。。}N={0、1、2、3、。。。}\mathbb{N} = \{0, 1, 2, 3, ...\} 自然数のエンコードは、次のように機能します1。 ゼロは空のセットです:Se t (0 )= { }Set(0)={} Set(0) = \{\} 数値:n > 0n>0n > 0Se t (n )= Se t (n − 1 )∪ { Se t (n − 1 )}Set(n)=Set(n−1)∪{Set(n−1)} Set(n) = Set(n-1) \cup …

1
三次元チェス
誰かの不可解な決定を守るために、人々はしばしば、その人は誰の頭をも越えて「3次元チェス」をしていると言います。さあ、3次元のチェスをするチャンスです! ルール 3Dチェスには多くのバリエーションがありますが、この課題のために私は自分で作成しました。私のバージョンは通常のチェスと同じですが、ピースが正方形ではなく立方体の中にあり、動きの次元が増えている点が異なります。この挑戦を簡単にするために、ポーンとキャスティングがありません。 ピースムーブメント (コンパスの方向は、標準のチェス盤で発生する動きを指し、上下は3Dチェス盤で垂直に動くことを指します)。 キング -与えられたターンに行くことができる26の正方形を持っています:N、NE、E、SE、S、SW、W、NW。上、下、上/下+コンパス方向の1つ。 女王 -王と同じ方向に移動できますが、彼女が望む方向に移動できます。 ルーク -6方向に移動できます:N、E、S、W、上、下、 ビショップ -8つの三角形の移動方向:NE +上/下、SE +上/下、SW +上/下、NW +上/下 ナイト -2つのスペースを1つの軸に移動し、次に1つのスペースを別の軸に移動します。通常のチェスのように、ナイトは他の駒を飛び越えることができる唯一の駒です。 ピーステスター このスニペットを使用して、3Dボード上でさまざまなピースがどのように動くかを確認します(ヒント:*Testピースからの絶対距離に基づいて、正方形が有効な動きであるかどうかをすばやく判断するためのJS の機能を確認してください): const color = "Black"; const pieces = ["N","B","R","Q","K"]; const urls = ["https://image.ibb.co/gyS9Cx/Black_N.png","https://image.ibb.co/dknnzc/Black_B.png","https://image.ibb.co/kb3hXx/Black_R.png","https://image.ibb.co/hGO5kH/Black_Q.png","https://image.ibb.co/jApd5H/Black_K.png"]; var dragPiece; var size = 3; var index = 0; function start() { Array.prototype.add = function(a) …

18
私は「Redivosite」番号ですか?
Redivositeは、この課題の唯一の目的のために考案されたポルトマン語です。リダクション、ディビジョン、コンポジットの組み合わせです。 定義 整数N> 6が与えられた場合: Nが素数の場合、NはRedivosite番号ではありません。 Nが複合の場合: N 'が素数になるまでN' = N / d + d + 1を繰り返し計算します。dはNの 1より大きい最小除数です Nは場合Redivosite数であり、最終値のみならばNは」の除数であり、N 以下は、最初の100のRedivosite番号です(投稿時にはOEISエントリはありません): 14,42,44,49,66,70,143,153,168,169,176,195,204,260,287,294,322,350,414,462,518,553,572,575,592,629,651,702,726,735,775,806,850,869,889,891,913,950,1014,1023,1027,1071,1118,1173,1177,1197,1221,1235,1254,1260,1302,1364,1403,1430,1441,1554,1598,1610,1615,1628,1650,1673,1683,1687,1690,1703,1710,1736,1771,1840,1957,1974,2046,2067,2139,2196,2231,2254,2257,2288,2310,2318,2353,2392,2409,2432,2480,2522,2544,2635,2640,2650,2652,2684,2717,2758,2760,2784,2822,2835 例 N = 13:13は素数なので、13はRedivosite番号ではありません N = 32:32/2 + 3 = 19; 19は除数でも32でもないため、32はRedivosite番号ではありません N = 260:260/2 + 3 = 133、133 / 7 + 8 = 27、27 / 3 + 4 = …

30
それは整数ですか?
数は全体それが小数部分を有する負でない整数である場合。そう0と8して233494.0、全体が、しばらく1.1して0.001と233494.999はありません。 入力 お使いの言語のデフォルトのベース/エンコーディングの浮動小数点数。 たとえば、デフォルトの整数表現バイナリラムダ計算はなり教会の数字。ただし、Pythonのデフォルトの整数表現は、10進数の10進数であり、単項ではありません。 出力 truthyの入力は、全体であれば値falsyそうでない場合、値。 ご使用の言語が8桁までの小数精度のみをサポートしている場合は、1.000000002全体と見なすことができます。 入出力は、任意の標準I / Oメソッドを介して実行できます。 テストケース Input -> Output 332 -> true 33.2 -> false 128239847 -> true 0.128239847 -> false 0 -> true 0.000000000 -> true 1.111111111 -> false -3.1415926 -> false -3 -> false 得点 同様に、コード・ゴルフ、最短提出勝利。がんばろう!

22
弱い素数ですか?
最も近い他の素数がそれより小さい場合、素数は弱いです。同点がある場合、素数は弱くない。 たとえば、71は素数ですが、75は複合であるため、73は弱い素数です。 仕事 入力として2より大きい素数を指定すると、それが弱い素数であるかどうかを判断するコンピューターコードを記述します。これは標準の決定問題であるため、2つのケース(weakおよびなどnot weak)ごとに2つの一意の値を出力する必要があります。 これはコードゴルフなので、タグの標準ルールが適用されます。 OEIS 以下は、最初の47の弱い素数です。 3, 7, 13, 19, 23, 31, 43, 47, 61, 73, 83, 89, 103, 109, 113, 131, 139, 151, 167, 181, 193, 199, 229, 233, 241, 271, 283, 293, 313, 317, 337, 349, 353, 359, 383, 389, 401, 409, 421, 433, 443, 449, …

22
それは良い2048ボードですか?
これがここでの私の最初の質問ですので、コメントの提案は大歓迎です!ありがとう;) 前書き 以下のための1つの非常に一般的な戦略2048のゲームはありません下にスワイプ今までにありません。これにより、すべての大きな数字が上部に、下部の数字が下部に配置されます。したがって、この戦略を正しく適用すると、ボードは常に次のパターンに一致します。 チェックするパターン/あなたのタスク 提出は、完全なプログラムか、ボードが次のように記述できる場合に真実の値を返す関数のいずれかである必要があります。最初の数字以下など。適切な2048ボードは、一番上の数字が一番上にあるボードとして定義されます。これはcode-golfであるため、言語ごとの最短コード(バイト単位)が優先されます。 I / O 入力は、それぞれが4つの数字を含む4つの配列の配列、または16の数字の配列など、任意の適切な方法で取得できます。合計で、4x4ボードを表す合計16の数値に なります。出力は入力の真の値である必要があり、それ以外の場合は偽の値です。 例 真実: |-------------------| | 16 | | 64 | 8 | |-------------------| | 8 | | 32 | 8 | |-------------------| | 4 | | 32 | 2 | |-------------------| | 2 | | | | |-------------------| |-------------------| | 16 …

3
ゲームオブライフarrowlits
バックグラウンド この挑戦はapsillersに敬意を表しており、彼は挑戦でBest of PPCG 2016の見た目ほど簡単ではないカテゴリを獲得しました。 おめでとうございます! 「自己紹介」ページで、このユーザーはGame of Lifeセルラオートマトン用の本当にすてきなシミュレータを持っています。(真剣に、それをチェックしてみてください。)一方、aspillaは「arrowslit」のスペイン語です。これらの事実に照らして、この課題はGame of Lifeの矢じりについてです。 ゲームオブライフarrowlits GoLでは、矢印をグライダーで表し、壁を一連のブロックで表します。単一のグライダーが上から壁に近づき、壁の隙間を通過しようとします(矢印が点灯)。あなたの仕事は、グライダーが矢印に照らされているか、壁に衝突するかを確認することです。 入力 入力は、GoL構成を表すビットのグリッドです。任意の妥当な形式(2つのdistict印刷可能なASCII文字の複数行文字列、文字列のリスト、整数の2D配列、ブール値の2D配列など)で使用できます。明確にするために、文字の複数行の文字列を使用します.#に、以下します。 入力には、いくつかのプロパティがあることが保証されています。最初は、その高さは2N一部のN≥6 、その幅が少なくともある2N + 2。入力はすべて.sになりますが、最上部の3行のどこかがグライダーであり、中央の2行にブロックの壁があります。グライダーは南西または南東に向かっており、その位置は、壁が取り外された場合、下端に到達する前にサイドエッジを通過しない(ただし、グリッドのコーナーに到達する)ような位置です。グライダーは、最初に少なくとも1ステップ.s だけ左右の端から分離されます。どのフェーズでもかまいません。 壁は、1列の.sで区切られたブロックで構成されますが、1つの場所を除き、少なくとも2列の.s で区切られます。グライダーのように、左端と右端のブロックも、.sの1ステップだけエッジから分離されています。常に左端に少なくとも1つのブロックがあり、右端に1つのブロックがあります。 有効な入力グリッドの例を次に示します。 ....#...................... ..#.#...................... ...##...................... ........................... ........................... ........................... .##.##............##.##.##. .##.##............##.##.##. ........................... ........................... ........................... ........................... ........................... ........................... 出力 述べたように、あなたの仕事は、グライダーが壁に衝突するか、南端に到達するかを判断することです。この課題の目的上、シミュレーションの後半で何が起こっても、構成が単一のグライダーとブロックの壁で構成されなくなった場合、クラッシュが発生します。次の図は、南東のグライダーが2つの異なるフェーズでクラッシュすることなく通過できる最小のギャップを示しています(南西のグライダーの状態は対称的です)。 ...#........... .#.#........... ..##........... ............... ............... ##...........## ##...........## ...#........... ....#.......... ..###.......... ............... …

11
この数値は正確な-2の累乗ですか:(非常に)ハードモード
これは最近の課題のバージョンです。この数値は-2の整数乗ですか?問題の興味深い性質を強調し、課題をより困難にするために設計されたさまざまな基準を使用します。ここで考慮します。 リンクされた質問でTobyが素晴らしく述べた挑戦は、次のとおりです。 整数が2の正確なべき乗であるかどうかを判断する賢い方法があります。それはもはや興味深い問題ではないので、与えられた整数が-2の正確なべき乗であるかどうかを判断しましょう。例えば: -2 => yes: (-2)¹ -1 => no 0 => no 1 => yes: (-2)⁰ 2 => no 3 => no 4 => yes: (-2)² ルール: 整数は、64ビット、符号付き、2の補数です。これは、使用できる唯一のデータ型です。 次の操作のみを使用できます。これらはそれぞれ1つの操作としてカウントされます。 n << k、n >> k:左/右シフトnによってkビット。符号ビットは右シフトで拡張されます。 n >>> k:右シフトしますが、符号ビットを拡張しません。0がシフトインされます。 a & b、a | b、a ^ b:ビット単位のAND、OR、XOR。 a + b、a - b、a …

2
任意の長方形を配置してスペースを埋める
これらの長方形は長方形のスペースを埋めることができますか? 長方形の束が与えられると、長方形のスペースを埋めるように配置できるかどうかを尋ねられます。 スペック 任意のm x n長方形の束が与えられた場合; 0 <= m, n <= 1000、穴や重なりのない長方形の領域を正確にカバーするように配置できるかどうかを判断します。長方形は回転できず、各長方形は一度しか配置できません。 入力 この入力は、2空間次元の何らかのリストを提供する限り、非常に柔軟です。たとえば、次の両方が有効です。 スペースで区切って、リターン 1 2 1 5 4 5 3 6 寸法表 [[1, 2], [1, 5], [4, 5], [3, 6]] 出力 true / false、0/1、T / F、True / Falseなどのあらゆる種類のtrue / false値。あまり明確でない出力メソッドを使用する場合は、回答で指定してください。 例 テストケース1 入力: 1 1 1 5 2 …

4
Golf Me An OOP!
Golf Me An OOP! オブジェクト指向プログラミングの2つの重要なコンポーネントは、継承と構成です。一緒に、シンプルで強力なクラス階層を作成して問題を解決することができます。タスクは、クラス階層に関する一連のステートメントを解析し、階層に関する質問に答えることです。 入力 クラス階層に関する一連のステートメントと質問。ファイルまたは標準入力のいずれか、お使いの言語に最適なものから読み取られます。ファイルオプションを使用する場合、ファイル名はコードの最初の引数(関数引数またはコマンドライン引数のいずれか選択したもの)として渡されます。形式は次のとおりです。 <statement> : <name> is a <name>. | <name> has a <name>. <question> : Is <name> a <name>? | Does <name> have a <name>? <name> : a-z | A-Z | sequence of alphanumerics or underscores, starting with a letter 入力は常にステートメントであり、質問です。すべてのクラス名は大文字の英字(A-Z)で始まり、すべてのメンバー名は小文字の英字(a-z)で始まります。すべての名前は大文字と小文字が区別されます- ABC123と同じクラスではありませんAbc123。 任意の周期的な継承が存在することはありません-場合Bの継承はA、A継承ではないだろうBか、のいずれかBの子。 以下のような文-唯一のクラス名が階層の一部になるfoo is …

3
助けてください、私は無限の工場に閉じ込められています!
この課題は、ザックトロニクスのゲームInfinifactoryに大まかに触発されています。 で表されるコンベアの長方形グリッドのトップダウンビューが表示され>v<^ます。スペースで表されるコンベアのないセルが存在する場合があります。以下に例を示します。 > <vv < v ^ >v v >v^^>vv^ ^>^ v > v<v >> >v v<^ この設定は、無限のスペースに暗黙的に囲まれています。 さらに、グリッドの左上隅にあるコンベヤー上に配置される長方形の貨物の寸法が与えられます。あなたの仕事は、貨物が静止するかどうか、またはループで移動するかどうかを把握することです。 もちろん、貨物は一度に複数のコンベヤーをカバーする可能性が高いため、各ステップで貨物の方向を把握するためのルールは次のとおりです。 反対側のコンベヤーは互いにキャンセルします。したがって、3x2の貨物が次のパッチのいずれかをカバーする場合(明確にするためにハイフンとパイプで概説)、結果は同じになります。 +---+ +---+ +---+ |>>^| | ^| |v^^| |^<<| |^ | |^^v| +---+ +---+ +---+ これらについても同じことが言えます。 +---+ +---+ +---+ |v^<| | | |><>| |>>>| |>> | |>><| +---+ +---+ +---+ …

30
ノアの整数リスト
前書き: 聞いたことがあると思いますが、ここで非常に簡単な要約を示します。ノアは、大洪水時に箱舟に救うために、地球上のあらゆる種類の動物、オスとメスの2種を集めました。聖書からの実際の引用は次のとおりです。 創世記7:2-3 あらゆる種類のきれいな動物7匹、オスとその仲間、あらゆる種類の汚れた動物2匹、オスとその仲間、空にあるあらゆる種類の鳥7匹、雄と雌、地球の表面に子孫を保存します。 ソース しかし、この挑戦​​のために、私たちはきれいな/汚れた部分と彼が各動物の7つを取った部分を無視します。この課題は、この部分についてのみです。 あらゆる種類の汚れた動物のうち2 匹、オスとその仲間 チャレンジ: 入力: 正の整数のリストが(ランダムな順序で)与えられます。 出力: 「ノアのリスト」であるかどうかを示す2つの異なる値。これは必要ないする必要がtruthy / falseyのようにも可能性があり、値0/ 1のJava / C#で、または'A'/ 'B'いくつかの例を与えるために、任意の言語で。 リストはいつ「ノアのリスト」ですか?リスト内の整数が正確に2つある場合。 チャレンジルール: I / Oは柔軟です。入力は、整数/浮動小数点数/文字列のリスト/配列/ストリーム、またはSTDINから1つずつ読み取ることができます。出力は、関数またはSTDOUT /ファイルへの出力から返される2つの異なる値です。 入力リスト内の整数をランダムな順序であり、その範囲内で陽性であることが保証されている1≤n≤1000001≤n≤1000001\leq n\leq100000。 入力リストは空でないことが保証されています。 2を超える整数(2、4、6、8など)が存在することは誤りです。つまりは、[6,4,4,6,4,7,4,7]あなたはまだこのような同等のペアを作成することができますが、falseyです[[4,4],[4,4],[6,6],[7,7]]。 一般的なルール: これはcode-golfであるため、バイト単位の最短回答が優先されます。 コードゴルフ言語では、非コードゴルフ言語で回答を投稿しないようにしてください。「任意の」プログラミング言語の可能な限り短い答えを考えてみてください。 デフォルトのI / Oルールを使用した回答には標準ルールが適用されるため、STDIN / STDOUT、関数/メソッド、適切なパラメーターおよび戻り値型、完全なプログラムを使用できます。あなたの電話。 デフォルトの抜け穴は禁止されています。 可能であれば、コードのテスト(TIOなど)へのリンクを追加してください。 また、回答の説明を追加することを強くお勧めします。 テストケース: Truthy: [7,13,9,2,10,2,4,10,7,13,4,9] [1,2,3,1,2,3] [10,100,1000,1,100,10,1000,1] [123,123] [8,22,57189,492,22,57188,8,492,57188,57189,1,1] Falsey: [6,4,4,6,4,7,4,7] [2,2,2,2,2,2] …

11
これはパスカルの行列ですか?
でパスカルの三角形各番号はゼロとして空のスポットを治療する、直接上記2つの数の合計です。 三角形を回転させることで、Pascalの行列と呼ぶさまざまなサイズと回転の正方行列を切り取ることができます。これらの行列は常に上位を含む必要があることに注意してください。ここではいくつかの例を示します。111 1 1 1 1 1 2 3 4 1 3 6 10 1 4 10 20 6 3 1 3 2 1 1 1 1 1 5 15 35 70 1 4 10 20 35 1 3 6 10 15 1 2 3 4 5 1 1 1 …

2
ルービックキューブですか?
ped敬の念を抱かせる時間は、「ルービックキューブ」の写真(Tシャツ、ポスターなど)が実際には解けないことを指摘することです。 最初に確認する必要があるのは、キューブが適切なピースで構成されていることです。キューブを解くには、それぞれが9つの正方形の6色が必要です。また、キューブには、エッジとコーナーの各ユニット(キューブを構成する小さなキューブ)が一意である必要があります。それらは一意である必要があるだけでなく、2つの中央ピースが互いに向かい合っている場合、エッジまたはコーナーピースはこれらの色の両方を含むことができません。 すべての適切なピースで構成されるキューブを作成したら、それが解決可能であることを確認する必要があります。ここにはいくつかのルールがありますので、専門家に説明を委ねます。以下のネタバレでこれを行う方法を説明します。自分で問題を解決することに興味がある場合は、サイトにアクセスしてこの課題を理解したり参加したりする必要はありません。 リンクされた説明 あなたの仕事は、入力としてパターンを取り、それが実際に解けるルービックキューブであるかどうかを判断することです。解けるようにするには、キューブの有効な移動を実行する方法が必要です。これにより、キューブの各面の色が1つだけになります(また、異なる面の色は異なります)。ほとんどのルービックキューブには標準の色が付いています(白は黄色の反対側など)。この特定の色に解決状態が続くとは思わないかもしれません。 有効な移動は、立方体の1つの面の時計回りまたは反時計回りの回転です。立方体の面を回転すると、面に接する正方形も回転し、以前に触れていた面に接続されたままになります。 IO キューブは合理的な方法で使用できます。言語に組み込みの「キューブフェイス」タイプがあり、入力に適している場合は、キューブのネットの2D配列、各フェイスに1 3 x 3リストを使用できます。ただ合理的です。特定の形式が受け入れられるかどうかを知りたい場合、またはチャットでpingを送信し、その有効性を示すためにチャレンジに追加します。 入力フォーマットは、最大9色までサポートする必要があります。 出力の場合、これは決定問題であるため、「はい、これは有効なルービックキューブです」に1つの定数値を、「いいえ、これは有効なルービックキューブではありません」に別の定数値を出力する必要があります。 これはコードゴルフであるため、回答はバイト単位でスコアリングされ、バイト数が少ない方が優れています。 テストケース ここにテストケースがあります。これらは、各正方形が1文字の立方体のネットとしてフォーマットされます。異なる文字は異なる色を表します。リクエストに応じて、さらにテストケースを追加できます。 可解 RRR RRR RRR GGGWWWBBBOOO GGGWWWBBBOOO GGGWWWBBBOOO YYY YYY YYY GRR GRR ORW WWRBWYBOOGGY GGRBWGYBBOOO OOGRWGYWWRBB WYO YYB YYB 解決できない RRR RRR RRR GGGWWWBBBOOO GGGWWWBBBOOO GGGWYWBBBOOO YWY YYY YYY RRR RRR RRR GGGWWWBBBOOO GGGWWWBBBOOO …

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