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

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

6
六角形の隣接
上の画像は、六角形の六角形のグリッドを表示しています。グリッド内の各セルには、図のように中心から反時計回りに螺旋状にインデックスが割り当てられます。グリッドは無期限に継続することに注意してください-上の写真は単に最初のセクションです。次の六角形は60と37に隣接します。 あなたのタスクは、このグリッド上の2つのセルが隣接しているかどうかを判断することです。 2つのセルインデックスを指定して、2つのセルが隣接している場合は真理値を出力し、そうでない場合は偽値を出力するプログラムまたは関数を作成します。 実用的な理由に制限されない場合、コードは理論的にはあらゆるサイズの入力に対して機能するはずです。 真実のテストケース: 0, 1 7, 18 8, 22 24, 45 40, 64 64, 65 偽のテストケース: 6, 57 29, 90 21, 38 38, 60 40, 63 41, 39 40, 40 これはコードゴルフなので、バイト単位の最短回答が勝ちです。説明は、非難解な言語であっても奨励されています。

9
MおよびS文字で構成されたASCIIアートウィンドウを検出する
ウィンドウは、奇数の辺の長さが少なくとも3のASCIIアートの正方形で、エッジの周りに1文字の境界線があり、中央に垂直および水平のストロークがあります。 ####### # # # # # # ####### # # # # # # ####### MSウィンドウは、境界線が文字Mとのみで構成されるウィンドウSです。あなたの仕事は、文字列を取り、入力が有効なMSウィンドウであれば真理値を出力し、そうでなければ偽値を出力するプログラム(または関数)を書くことです。 仕様書 入力は、改行で区切られた文字列または各行を表す文字列の配列として取得できます。 MSウィンドウの境界線には、M文字とS文字が混在している場合がありますが、内部は常にスペースで構成されます。 末尾の改行があるウィンドウのみを検出するか、末尾の改行がないウィンドウのみを検出するかを選択できますが、両方は検出できません。 テストケース 真実: MMM MMM MMM SMSMS M M S SMSMM S S M SMSMS MMMMMMM M S M M S M MSSSSSM M S M M S M MMMMMMM …

18
4ビットを切断する
あなたのタスク:入力文字列が与えられたら、その文字列のバイナリ表現に4 1sまたは0sが連続していないかどうかを判断します。さらに、コード自体には、このような4つの実行が連続して含まれてはなりません。 テストケース String Binary Result U3 01010101 00110011 Truthy 48 00110100 00111000 Falsy Foobar 01000110 01101111 Falsy 01101111 01100010 01100001 01110010 Feeber 01000110 01100101 Truthy 01100101 01100010 01100101 01110010 $H 00100100 01001000 Truthy <Empty> - Truthy ルール 入力は常に、空白文字を含む印刷可能なASCIIの範囲内になります。 コードはビットレベルでのみ重要であるため、任意のエンコードを使用できます。 この条件により、空白や他の多くの文字の使用が妨げられるため、コードには実際には、実行ごとに10バイトのペナルティで、このような4つの実行が連続して含まれます。 5 1sまたは0sの実行は2回の実行としてカウントされ、6行の実行は3回の実行としてカウントされます。 入力は文字列または文字配列であり、他の形式ではありません。 完全なプログラムまたは関数を作成できます。 回答にコードのバイナリ表現を入力する必要があります。 幸運を祈ります、最低スコアが勝ちます! このスクリプトは、チャレンジに役立ち、コードを入力に入れると、UTF-8を使用している場合、コードのバイナリ表現、長さ、ペナルティ、および合計スコアを提供します。 リーダーボード これは、通常のリーダーボードと言語ごとの勝者の概要の両方を生成するスタックスニペットです。 …

26
これはスミス番号ですか?
チャレンジの説明 スミス数である複合その和桁の素因数の桁の和の合計に等しい数。整数を指定してN、それがスミス数かどうかを判断します。 最初の数スミス番号は4、22、27、58、85、94、121、166、202、265、274、319、346、355、378、382、391、438(シーケンスA006753 OEISで)。 サンプル入出力 18: False (sum of digits: 1 + 8 = 9; factors: 2, 3, 3; sum of digits of factors: 2 + 3 + 3 = 8) 22: True 13: False (meets the digit requirement, but is prime) 666: True (sum of digits: 6 + 6 …

10
ヘテログラム、パリンドローム、なんてこった!
(最初の課題は、問題があるかどうかを教えてください。) heterogramはアルファベットのない手紙が複数回発生していない、と言葉で回文が同じ前後にあるフレーズです。 ここでの課題は、単語(文字だけ)を入力として受け取り、それがヘテログラム(真実/偽)であるかどうかを出力するコードを書くことです。キャッチは、プログラムが回文である必要があるということです-同じ前後を読み取ります。ここでは大文字化は重要ではないため、ヘテログラムを有効にするには、たとえばqとQの両方を含めることはできません。コメントは許可されません。また、回文部分を簡単にするために、コード(またはコードの重要な部分)を含む文字列を配置することはできません:P これはコードゴルフなので、最短のコードが優先されます。がんばろう! 編集:パリンドローム部分については、左右の形の括弧、括弧、またはその他の記号を適切に反転する必要があります。(helloolleh)は回文ですが、(helloolleh(はそうではありません。これは便利な回文と呼ばれます。 編集2:空の入力、複数の単語の入力、または文字以外の文字の入力はありません。だからそれを心配しないでください:)

20
これは1で終わる3桁の数字ですか?
負でない整数を指定すると、一貫した整数ベースで、1で終わる3桁の数値であるかどうかを返します。言い換えると、数値はbase-Nで表す必要があります。Nはゼロより大きい整数です。 ルール これはcode-golfなので、最短の回答が勝ちます。 単項演算子の動作がおかしいので、入力3 10の動作は未定義です。 標準的な抜け穴は禁止されています。 例 正しい: 5 73 101 1073 17 22 36 55 99 偽: 8 18 23 27 98 90 88 72 68 少数の大きな数字: 46656 true 46657 true 46658 true 46659 true 46660 true 46661 false 46662 false 46663 true 46664 false 46665 true 46666 true …

20
チェンプライムですか?
数値は、次の2つの条件を満たす場合、陳素数です。 プライムそのものです それ自体に2を加えたものは、素数または半素数です。 素数とは、正確に2つの除数があり、それらの除数がそれ自体と1つで構成される数です。 準素数は、2つの素数の積である数値です。(12 = 2 * 2 * 3はセミプライムではありませんが、25 = 5 * 5はセミプライムです)。 あなたの仕事は、数が陳素数であるかどうかを判断することです。yesの場合は真実の値を、noの場合は偽の値を出力する必要があります。 入力は1以上の任意の整数になります。また、文字列、文字配列、または配列または数字として取得することもできます。 例: 101 -> truthy 223 -> falsy 233 -> truthy 1 -> falsy これはOEIS A109611です。 これは、一部、私はソフィー・ジェルマンの素数に触発されていますか?残念ながら、これは重複として閉じられたため、重複ではない、やや関連するチャレンジを投稿しています。

15
OVSFコードですか?
1sと-1sのリストが与えられたら、それが有効なOVSFコードかどうかを判断します(真偽値または偽値を出力します)。 OVSFコードは次のように定義されます。 [1] OVSFコードです。 場合はX、次に、OVSFコードであるX ++ XとX ++ -Xの両方のOVSFコードです。 以下++はリストの連結-で、リスト内のすべての要素を否定します。 他のリストは有効なOVSFコードではありません。 あなたは、入力リストにのみ含まれているとして-1と1していますが、その長さが2のべき乗ではありません空正しくリスト、などのリストを処理する必要があります。 最短コード(バイト単位)が優先されます。 テストケース [] -> False [1] -> True [-1] -> False [1, 1] -> True [1, -1] -> True [1, 1, 1, 1] -> True [1, 1, 1, 1, 1] -> False [1, -1, -1, 1, -1, 1, …

21
プライマリストリング
プライマリ(binary-prime)文字列とは、バイナリグリッドとして記述されたときに、すべての行と列が総計を持つものです。 それはかなりあいまいな説明ですので、実際の例でそれを分解しましょう... この例では、文字列を使用しますbunny: まず、各文字のASCIIコードポイントとそのバイナリ表現を見つけます。 Char | ASCII | Binary b 98 1100010 u 117 1110101 n 110 1101110 n 110 1101110 y 121 1111001 これらのバイナリ値を上から下に取り、グリッドに配置します(必要に応じて先行ゼロを追加します)。 1 1 0 0 0 1 0 1 1 1 0 1 0 1 1 1 0 1 1 1 0 1 1 0 1 …

22
それよりも小さい最大の素数を繰り返し減算することにより、数は1に達することができますか?
チャレンジ: 数を指定して、それより厳密に小さい最大の素数を取り、この数からそれを減算し、それよりも小さい最大の素数でこの新しい数に再度これを行い、3未満になるまでこれを続けます。プログラムは真偽値を出力する必要があります。そうでない場合、プログラムは偽値を出力する必要があります。 例: これらはすべて、真の価値をもたらすはずです。 3 4 6 8 10 11 12 14 16 17 18 20 22 23 24 26 27 29 30 32 34 35 37 38 40 41 42 44 46 47 48 50 これらはすべて偽の値を与える必要があります。 5 7 9 13 15 19 21 25 28 31 33 36 39 …

4
Gravity Guyはそれを実現できますか?
Gravity Guyは、ユーザーの入力が重力の方向を反転させる1つのキーのみであるゲームです。ASCIIアートレベルが与えられたら、Gravity Guyが最後に到達できるかどうかを判断します。 ルール 重力の初期方向は下向きです。 入力の最初の列には常にGravity Guy が開始する1つのみ が含まれます。# 繰り返しごとに、彼は右側のキャラクターに直接移動します。 彼のパスがブロックされて彼がに移動するなら#、プレーヤーは負けます。 移動後、プレーヤーは重力を下から上、または上から下にオプションで切り替えることができます。 Gravity Guyは、次に#(重力の現在の方向に)次へ進みます。 #上に落ちるものがなく、彼がグリッドから落ちる場合、プレーヤーは負けます。 Gravity Guy が入力グリッドの右側から移動すると、プレーヤーが勝ちます。 例 これが入力グリッドの場合: ### # # # ### Gravity Guyはx、各反復の後、これらの位置から開始します。^=重力を上に、v=重力を下に切り替えます。 v ^ v ------------------------------------------------------------- ### | ### | ### | ### | ### | ### x | | x | x | x …

30
無効なInvali Inval
このアイデアは、@TùxCräftîñgのチャットメッセージに大まかに基づいています。 以下のシーケンス例をご覧ください。 INVALID0、INVALID1、INVALID2 INVALID3、INVALID4...INVALID9 後INVALID9、次のようになります。 INVALI0、INVALI1、INVALI2、INVALI3...INVALI9 そしてINVALI9、次のようになります: INVAL0、INVAL1、INVAL2、INVAL3...INVAL9 その後、次INVAL9のようになります。 INVA0、INVA1、INVA2、INVA3、...INVA9 INVALID毎回単語から文字を削除し続けていることに注目してください。 単一の文字、つまり文字に到達するまで、これを繰り返しますI。 I0、I1、I2、I3、I4...I9 さて、あなたの仕事は、単語の入力を取得し、上記の例のようにそれからシーケンスを生成することです。コードも1文字で動作する必要があり、その場合、結果のシーケンスは短くなります。 任意の入力および出力形式を選択できます(必要に応じて、セパレーターの有無にかかわらず)が、選択したものを指定する必要があります。 シーケンスは、正確に指定された順序である必要があります。 このチャレンジを正常に完了する最短のコード(バイト単位)がチャレンジに勝ちます。 上記の例の完全なシーケンス: INVALID0, INVALID1, INVALID2, INVALID3, INVALID4, INVALID5, INVALID6, INVALID7, INVALID8, INVALID9, INVALI0, INVALI1, INVALI2, INVALI3, INVALI4, INVALI5, INVALI6, INVALI7, INVALI8, INVALI9, INVAL0, INVAL1, INVAL2, INVAL3, INVAL4, INVAL5, INVAL6, INVAL7, INVAL8, INVAL9, INVA0, INVA1, …

18
回転対称性のある数
整数、出力所与truthyのそれは同じ逆さまである場合、値または(180°回転)falsyそうでない場合、値を。 0、1、及び8回転対称性を持っています。6となり9、逆もまた同様です。 真実の結果を生み出す一連の数字:OEIS A000787 0, 1, 8, 11, 69, 88, 96, 101, 111, 181, 609, 619, 689, 808, 818, 888, 906, 916, 986, 1001, 1111, 1691, 1881, 1961, 6009, 6119, 6699, 6889, 6969, 8008, 8118, 8698, 8888, 8968, 9006, 9116, 9696, 9886, 9966, 10001, 10101, 10801, 11011, 11111, 11811, 16091, …
27 code-golf  number  sequence  decision-problem  code-golf  string  parsing  c  code-golf  sorting  integer  code-golf  number  sequence  rational-numbers  graphical-output  atomic-code-golf  assembly  box-256  code-golf  geometry  tips  python  code-golf  number  sequence  arithmetic  number-theory  code-golf  ascii-art  kolmogorov-complexity  geometry  code-golf  graphical-output  code-golf  math  code-golf  grid  cellular-automata  game-of-life  code-golf  string  subsequence  code-golf  arithmetic  rational-numbers  code-golf  tips  dc  code-golf  ascii-art  kolmogorov-complexity  date  code-golf  string  primes  code-golf  string  natural-language  conversion  code-golf  sequence  code-golf  number-theory  primes  base-conversion  code-golf  math  primes  base-conversion  code-golf  ascii-art  fractal  code-golf  matrix  code-golf  math  tips  geometry  python  string  code-challenge  keyboard  code-golf  graphical-output  code-golf  string  code-golf  number  sequence  cops-and-robbers  number  sequence  cops-and-robbers 

15
隣接する単語の一致
このチャレンジでは、2つの単語が渡されます。あなたの仕事は、それらが隣接しているかどうかを判断することです。 次の場合、2つの文字が隣接しています。 同じ文字、または それらは辞書的に隣接しています。 たとえば、JはI、J、およびKのみに隣接しています。 ZはAに隣接していません 次の場合、2つの単語が隣接します。 それらは同じ長さであり、 各文字は、他の単語の一意の文字に隣接しています。 たとえば、C> D、A> A、T> Sのように、CATはSADに隣接しています。FREEはGRRDに隣接していません(各Eとペアにする文字が必要 です)。 入出力 2つの文字列が渡され、それらが隣接している場合は真の値を返し、そうでない場合は偽の値を返す必要があります。以下のすべてのテストケースについては、1分以内に戻る必要があります。 文字列には大文字のアルファベットのみが含まれると想定できます。 2つの文字列は、引用符付きまたは引用符なしでリストとして渡すか、連結できます。 テストケース 真実: A A A B C B DD CE DE FC ABCD BCDE AACC DBBB DJENSKE FDJCLMT DEFGHIJKL HJLEHMCHE IKLIJJLIJKKL LJLJLJLJLJHI ACEGIKMOQSUWY BLNPRDFTVHXJZ QQSQQRRQSTTUQQRRRS PQTTPPTTQTPQPPQRTP ELKNSDUUUELSKJFESD DKJELKNSUELSDUFEUS 偽物: A C A …

18
素因数の合計
2013年には素因数分解があり3*11*61ます。2014年には素因数分解があり2*19*53ます。これらの因数分解に関する興味深い特性は、2013年と2014年の因数分解に異なる数の素数が存在し、それらの合計が同じ数になることです11+61=19+53=72。 2番目の数の選択された素因数の合計に等しい1つの数の選択された素因数の合計が存在する場合、1より大きい2つの正の整数を入力として受け取り、真理値を返すプログラムまたは関数を記述します。それ以外の場合はfalsey値。 明確化 3つ以上の素因数を使用できます。数のすべての素因数を合計で使用する必要はありません。2つの数から使用される素数の数が同じである必要はありません。 数の因数分解で素数が1を超える累乗に引き上げられたとしても、その数の素数の合計で1回しか使用できません。 1は素数ではありません。 両方の入力数は未満になり2^32-1ます。 テストケース 5,6 5=5 6=2*3 5=2+3 ==>True 2013,2014 2013=3*11*61 2014=2*19*53 11+61=19+53 ==>True 8,15 8=2^3 15=3*5 No possible sum ==>False 21,25 21=3*7 25=5^2 No possible sum (can't do 3+7=5+5 because of exponent) ==>False これはコードゴルフです。標準ルールが適用されます。バイト単位の最短コードが優先されます。

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