問題タブ [puzzle]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
242 参照

c - 部分的またはラップされた乗算-誰でもこの関数を識別できますか?

私は部分的な乗算のように見えるものへの洞察を望んでいます。

この関数は、次のように複数回繰り返されます。

この結果を計算するためのショートカットはありますか?
x == yの場合はどうですか?

詳細情報へのリンクがあれば役立ちます。

0 投票する
5 に答える
4397 参照

language-agnostic - 任意の基数 (x/y の n 桁目) での比率展開から特定の桁を取得する

最初から開始せずに繰り返し小数比率の桁数を計算できるアルゴリズムはありますか?

これは、小数展開が任意に長くなる可能性がある場合に機能するはずなので、任意のサイズの整数を使用しないソリューションを探しています。

たとえば、33/59 は 58 桁の繰り返し小数に展開されます。それを確認したい場合、58 位から始まる数字を計算するにはどうすればよいでしょうか。

編集済み - 2124679 / 2147483647 の比率で、2147484600 番目から 2147484700 番目までの 100 桁を取得する方法。

0 投票する
10 に答える
36689 参照

algorithm - ノノグラムを解く (ピクロス)

金曜日の午後です。楽しいパズル/アルゴリズムの問​​題を解決しましょう。

私のお気に入りのニンテンドー DS ゲームの 1 つは、ピクロス DSです。ゲームは非常にシンプルで、ノノグラムと呼ばれるパズルを解く必要があります。ここで簡単なオンライン ピクロス クローンを試すことができます: TylerK's Picross .

ノノグラムはグリッドであり、グリッドのすべての行と列に対して一連の数値が定義されています。数字は、その行/列の「塗りつぶされた」正方形のブロックを定義しますが、ブロックの両側の塗りつぶされていない領域は定義されていません。たとえば、次のような行があるとします。


(出典: steam-punk.net )

その行の考えられる解決策は次のとおりです。


(出典: steam-punk.net ) (出典: steam-punk.net )

「4 5」は、行のどこかに、4 つの連続したブロックが埋められ、その後に 5 つの連続したブロックが埋められていることを示しています。定義されていません。

すべての行と列が定義を満たし、矛盾がなければ、パズルは完成です。

コンセプトは非常に単純なゲームですが、手動で解決するにはかなりの時間がかかる場合があります。ピクロス DS のパズルは、最大 25x20 グリッドまで徐々にサイズが大きくなり、通常、解くのに約 30 分かかります。

しかし、解決するプログラムを書くのはかなり簡単なゲームになるだろうといつも思います。私はそれに慣れたことはありませんが、おそらくここにいる何人かの人々は挑戦を楽しむでしょう. かなりの数の解決策が投稿された場​​合、Paolo Bergantino が Boggle question でここで行ったのと同様に、相互に大きなパズルでそれらをベンチマークします。ウィキペディアのノノグラムのページには、パズルを攻撃する方法に関するかなりの情報があります。参照したい場合は.

これは、TylerK の Picross からのパズル #1 の解析しやすい定義です。これで、プログラムにフィードするものが得られます。行 1 はパズルの寸法 (おそらく不要)、行 2 は行の定義、行 3 は列の定義です。これは最初に頭に浮かんだことなので、誰かがより良い入力形式を考えられる場合は、お気軽にコメントするか、この投稿を編集してそれを含めてください。

0 投票する
14 に答える
1741 参照

puzzle - コードゴルフ:オートマタ

これらのルールを使って究極の笑いジェネレーターを作りました。あなたはそれをあなたの好きな言語で巧妙な方法で実装できますか?

ルール:

すべての反復で、次の変換が発生します。

0 投票する
10 に答える
55336 参照

puzzle - 数値が 3 で割り切れるかどうかを調べる

数値が 3 で割り切れるかどうかを判断するコードを記述します。関数への入力は 0 または 1 の単一ビットであり、これまでに受け取った数値が 3 で割り切れる数値のバイナリ表現である場合、出力は 1 である必要があります。ゼロ。

例:

これはインタビューの質問に基づいています。論理ゲートの図面をお願いしますが、これはスタック オーバーフローであるため、任意のコーディング言語を受け入れます。ハードウェア実装 (verilog など) のボーナス ポイント。

パート a (簡単):最初の入力は MSB です。

パート b (少し難しい):最初の入力は LSB です。

パート c (難しい): (a) と (b) では、どちらが速くて小さいですか? (理論的には Big-O の意味ではありませんが、実際にはより速く/より小さくなります。) 次に、より遅く/より大きなものを取り、より速く/より小さなものと同じくらい速く/小さくします。

0 投票する
5 に答える
401 参照

algorithm - Celestial ジュークボックスにシャッフルを実装する

「Celestial Jukebox」のシャッフルをどのように実装しますか?

より正確には、各時刻 t で、0..n(t) の間の一様乱数を返します。これにより、シーケンス全体で繰り返しがなく、n() が時間とともに増加します。

具体的な例として、カタログ内の任意の曲を 0 ベースのインデックス番号で再生できる定額音楽サービスを想定します。インデックス番号の範囲を広げる新しい曲が頻繁に追加されます。目標は、毎回新しい曲を再生することです (カタログに重複がないことを前提としています)。

理想的なソリューションは、既存のハードウェアで実行可能です。8 MB の DRAM に 600 万曲のリストをどのように詰め込むのでしょうか? 同様に、曲数が多いと、O(n) 選択のタイミングが悪化します。

-- LCG ジェネレーターの場合、0..N 0で部分的に消耗した LCG を指定すると、0..N 1 (N1 > N0) で消耗したシーケンスを繰り返さない別の LCG に変換できます。
-- 特定の曲がすでに再生されているかどうかを確認することは、急速に手に負えなくなっているようですが、これが唯一の方法かもしれません。これに効率的なデータ構造はありますか?

0 投票する
25 に答える
33710 参照

algorithm - M位置のサークルシフトNサイズ配列の最速アルゴリズム

M位置のサークルシフトアレイの最速のアルゴリズムは何ですか?
たとえば、[3 4 5 2 3 1 4]シフトM=2の位置は。である必要があります[1 4 3 4 5 2 3]

どうもありがとう。

0 投票する
2 に答える
279 参照

algorithm - カスタード沼のピクシーズ パズル

(Rich Bradshaw に感謝)

次のパズルの最適な戦略を探しています。

新しい妖精の王として、王国のカスタード湿地の地図を作成するのはあなたの義務です。
湿地は空気のような霧に覆われ、カスタードの島々が散らばっています。
各ポイントで低くまたは高く飛ぶように指示して、ピクシーを沼地に送ることができます。
ピクシーがカスタードの上に急降下すると、気が散ってシーケンスを完了できません。霧が濃いので、ピクシーが向こう側に来たかどうかしかわかりません。

コーディング用語で..

これは、指定された一連の急降下で妖精が退出したかどうかを返します。

最も簡単な方法は、1 回の急降下だけでシーケンスを渡すことです。これにより、「サイズ」試行ですべてのカスタード島が明らかになります。
カスタードの数に比例したものがいいのですが、次のようなシーケンスに問題があります。

このパズルの他の形式へのリンクも歓迎します。

0 投票する
5 に答える
17403 参照

c# - ゼロの場合の10進値チェック

2 つのパラメーターを受け入れる除算メソッドを作成しようとしています。

ここで、除数が 0 の場合、「ゼロで割ることはできません」というエラーが発生しますが、これは問題ありません。

私がやりたいことは、除数が 0 かどうかを確認し、そうであれば 1 に変換することです。私のメソッドに if ステートメントをたくさん入れずにこれを行う方法はありますか? 多くの if() が混乱を招くと思います。私は数学的にこれを行うべきではないことを知っていますが、これには他の機能があります。

例えば:

if()宣言なしでできるの?

0 投票する
6 に答える
1273 参照

java - このJavaコードはどのようにコンパイルできますか?

同僚がこのようなコードに出くわし、それがどのようにコンパイルできるか理解できませんでした。

基本的に、メソッドの途中にランダムなURLが貼り付けられていましたが、javac気にしませんでした。

うまくいったので、誰にもわからない場合は回答を投稿しますが、投稿するのは面白かったと思いました。