問題タブ [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 に答える
1339 参照

algorithm - この種のゲームを解決する最良の方法はどれですか?

今夜、私は木のパズルを解こうとしたので、この種の問題をプログラムで解決する最良の方法はどれだろうと考えました。

目的は、立体のセット (3 次元のテトリスのピースなど) を組み合わせて、ピースが動きの種類に適合する場合にのみ構造に取り付けたりスライドさせたりできるという事実を考慮して、実行可能な方法で形状を形成することです。 (回転は無視し、90°回転のみ)。

私が何を意味するかを理解するために、この写真をチェックしてください。

0 投票する
11 に答える
9287 参照

puzzle - インタビューで無意味だと思う質問にどのように答えますか?

通常はインタビューの一部であるいくつかの質問に言及していますが、その背後にある意図が何であるかはわかりません. もちろん、あなたがどのように考えているか、またはどのように反応しているかを確認するためだけに議論する人もいるかもしれませんが、少なくとも答えが確実であるか、満場一致で正当化できる、より意味のあるパズルを尋ねた方がよいのではないでしょうか。たとえば、次の電球パ​​ズルをご覧ください。

意味のあるパズル: 閉ざされた部屋には 3 つの電球があり、部屋の外には 3 つのスイッチがあり、各電球に 1 つずつありますが、どのスイッチがどの電球に対応しているのかわかりません。どれがどれであるかを見つけ出し、答えが分かったら一度だけドアを開けることはできません。

まあ、意味のないカテゴリーの私によると、王冠の宝石は次のとおりです。

  • ある男性が車をホテルに押し込み、財産を失いました。どうしたの?
  • スクールバスに収まるゴルフボールの数は?
  • A 地点から B 地点に行かなければなりません。そこに行けるかどうかはわかりません。あなたならどうしますか?
  • 全世界で何人のピアノ調律師がいますか?
  • あなたはニッケルの高さまで縮み、質量は元の密度を維持するために比例して減少します。その後、空のガラスのブレンダーに放り込まれます。ブレードは 60 秒で動き始めます。職業はなんですか?

そのような場合に答える最善の戦略は何ですか?

補遺 -- Nikesh Arora (Google Inc. のグローバル セールス オペレーションおよびビジネス開発担当社長) のインタビューからの抜粋 --

「私はラリーと一緒に、晴れた日に飛行機で旅行していました。彼は眼下に広がる大地を見て、アメリカのすべての道路を 1 マイルごとにマッピングするのにかかる時間を計算していました。おそらく 1 か月で 500 台の車に相当します。 3 か月で 1,000 台の車か? それが彼の頭の働きです。それが Google ストリートビューが生まれた方法です...」

そんな思いを断ち切っていたに違いない。当たった!!!

0 投票する
3 に答える
383 参照

php - PHPを楽しむためのサイト

PHP スクリプトを使用してパズルを解かなければならないサイトはありますか? PythonChallengeに似ていますか?

私はほとんどのプログラミング チャレンジ サイトを知っています。アイデアは、PythonChallenge が各レベルの wiki で行う方法で、PHP スクリプト作成の強みと専門性を発見するのに役立つサイトを見つけることです。

0 投票する
3 に答える
6243 参照

r - R ユーザーにとってプログラミング上の課題はありますか?

特に R ユーザー向けのプログラミングの課題がある Web サイトまたはブログはありますか?

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

algorithm - 正方形のパズル ソリューション

質問: 整数 n が与えられた場合、次のように 1 から n 2までの数値を出力します。

n = 4

結果は次のとおりです。

どのように解決しますか (以下のリンクで提供されている解決策とは別に)?

http://www.programmersheaven.com/mb/CandCPP/81986/81986/problem-in-making-ap-c++-program/?S=B20000

私は別の方向を見ています。これまでのところ、私が記入しなければならないポジションの順序付きリストを取得できるかどうかを調べようとしています.

これが私が調べていることです:行列を「歩く」のではなく、そのように問題を解決するために「fdisp」を取得する方法はありますか?

0 投票する
7 に答える
3515 参照

python - Combinatorics Counting Puzzle: 20 個の 8 面ダイスを振って、同じ値のダイスが 5 個以上出る確率は?

1 人が 8 面体のサイコロを 20 個振って、合計 8 の 20 乗の可能な結果が得られるゲームを想定します。特定のイベントが発生する確率を計算するには、イベントが発生する可能性のある方法の数を 8^20 で割ります。

値 3 のサイコロを正確に 5 つ得る方法の数を計算できます。(20 が 5 を選択) は、3 のオーダー数を示します。7^15 は、15 回のロールで値 3 を取得できない方法の数を示します。 .

答えは、文字列 3,3,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0 を並べ替えることができる方法の数として見ることもできます,0,0 (20 は 5 を選択) にゼロの値の総数 (有効な値が 7 つあると仮定) 7^15 を掛けます (これは正しいです)。

  • 質問 1: 同じ値 (つまり、すべてのサイコロの値) のサイコロを正確に 5 つ得る方法の数を計算するにはどうすればよいですか? 注: 上記の最初の答えを単純に使用して bt 8 を掛けると、膨大な量の二重カウントが発生しますか?

    ケース (5 1's)、(5, 2's)、(5, 3's)、... (5's, 8) のそれぞれについて、それらを合計することができることを理解しています (より単純には 8*(5 1's) )。次に、オーバーラップ数の合計 (5 1) と (5 2)、(5 1) と (5 3)... (5 1) と (5, 2) と ... と (5, 8) を引きます。しかし、これは非常に面倒です。これを一般化して、多数のサンプルと多数のクラスにスケールアップします。

  • 同じ値のサイコロを 5つ以上得る方法の数を計算するにはどうすればよいですか?

    したがって、11111000000000000000 または 11110100000000000002 または 11111100000001110000 または 11011211222222223333 ですが、00001111222233334444 または 00051174134252 ではありません。

数学を説明するか、これをサポートするライブラリ(特にpythonモジュール)を指す答えを探しています。詳細と例の追加ポイント。

0 投票する
1 に答える
866 参照

iphone - カスタム iPhone キーボードから文字を読み取る

ユーザー向けのコード解読パズルであるアプリを構築しようとしています。数値キーパッドに小数を追加する方法のサンプル コードに従いましたが、うまく機能します。これを拡張して、キーボード全体がカスタム画像で満たされるようにしたいと思います。

たとえば、ユーザーが記号を押すと、iPhone がそれを「A」として読み取るコードを作成することは可能ですか?

助けてくれてありがとう。

0 投票する
3 に答える
1263 参照

math - 面白い数学パズル

プログラミングとはあまり関係ありませんが、SOが役立つと思います:

いいえと仮定して考え始めました。「abcdefghi」であり、a は「1 ~ 9」の間の任意の数であり、b は偶数のみであり、e は確実に 5 などです。

しかし、私はここから行く方法を見つけることができません。

任意のヘルプ/またはより良い方法をいただければ幸いです

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

algorithm - Tinyurlスタイルの一意のコード:衝突を防ぐための潜在的なアルゴリズム

オブジェクトを表すために一意の6桁のコードを必要とするシステムがあり、それらを生成するための優れたアルゴリズムを考えようとしています。前提条件は次のとおりです。

  • 私は基数20のシステムを使用しています(混乱やいたずらな言葉を防ぐために、キャップ、数字、母音、またはlは使用していません)
    • ベース20は6400万の組み合わせを可能にします
  • 一度に5〜1万のエントリを挿入する可能性があるため、理論的には一括挿入を使用します。つまり、一意のキーを使用すると、効率的またはきれいではない可能性があります(特に衝突が多く発生し始めた場合)。
  • 組み合わせの10%を埋めることは問題外ではないので、多くの衝突の可能性が高くなります
  • コードが連続していないことを確認したい

私はそれがうまくいくように聞こえるという考えを持っていましたが、それを実装する方法を理解するのに十分な数学がありません。いずれかを繰り返す前に、0〜63,999,999の各値をカウントできるNの値になります。

たとえば、N = 3(つまり、10 mod 3)を使用して0から9に移動すると、0、3、6、9、2、5、8、1、4、7になります。

繰り返さずに全範囲を数えることができるいくつかのより大きな数のNの値を計算するための魔法の数学の方法はありますか?理想的には、私が選んだ数字は、パターンがあることが明らかではないようにセットを飛び回るようなものですが、それがどれほど可能かはわかりません。

あるいは、0〜6400万の値の一意性を保証するハッシュアルゴリズムも機能しますが、それが可能かどうかを知るにはあまりにも愚かです。