問題タブ [number-theory]

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 投票する
3 に答える
500 参照

floating-point - 55.8/9.3 = 6 のときに fmod(55.8,9.3) が 9.3 を返すのはなぜですか?

fmod 関数を使用しようとしていますが、期待した結果が得られません。

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

javascript - 線形合同法のA、C、Mの選択

指定された期間があり、その期間中は衝突がないことが保証されている単純な疑似乱数ジェネレーター(PRNG)を実装しようとしています。いくつかの調査を行った後、私は完璧な非常に有名なLCGに出くわしました。問題は、それを適切に構成する方法を理解するのに苦労していることです。これが私の現在の実装です:

すべてのシード値に対して完全な期間を設定するには、次の条件が満たされている必要があると記載されています。

  1. cmは互いに素です
  2. a-1はmのすべての素因数で割り切れる
  3. mが4の倍数である場合、a-1は4の倍数です

13は、理解とテストが簡単です。しかし、2についてはどうでしょうか、それが何を意味するのか、それをチェックする方法がよくわかりません。そして、Cはどうですか、それはゼロになることができますか?ゼロ以外の場合はどうなりますか?

全体として、 48 ^ 5 -1の期間を持つように、A、C、およびMを選択する必要があります。Mは周期に等しいので、AとCについてはよくわかりません。

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

algorithm - 2 点間の最大距離を求める

昨日、インタビューに出演しました。私は質問の1つで立ち往生していました。ここでも同じことを尋ねています。

x 軸上の点を示す配列が与えられ、N 個の点があります。Mコインもプレゼント。

任意の 2 点間の最小距離を最大化する必要があります。

私はこの質問に完全に行き詰まっているので、私を助けてください。

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

integer - 合計、部分の数、および最大の被加数を指定して整数分割の数を見つける

合計Nの整数パーティションの数を探しています。パーツの数はSで、最大パーツは正確にXであり、すべてを列挙することはありません。

例:10個のパーツと42個が最大のパーツを持つ100個のすべてのパーティション。

この質問に対処する定理または分割IDは見つかりませんでした。これは、既知の定理から簡単に導き出せない重要な問題であると思われます(Nijenhuis and Wilf 1978、Andrews et al。2004、Bona 2006など)。

例:正確にSの部分を持つNのパーティションの数は、正確にSが最大の部分であるNのパーティションの数に等しくなります。

この質問は、純粋数学をはるかに超えた私の研究に関連しています。

更新:この質問は以下で回答されていますが、実装に使用したPythonスクリプトを投稿したいと思いました。速度を上げるために、おそらくCythonにプッシュします。

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

hadoop - 素数を生成するための並列アルゴリズム (おそらく Hadoop の map reduce を使用)

素数の生成は、特に新しいプログラミング言語、プラットフォーム、またはスタイルを試すときに、私が時々試みるおもちゃの問題です。

Hadoop (Map Reduce) を使用して、素数生成アルゴリズムまたは素数テスト アルゴリズムを作成しようと考えていました。

この質問を投稿して、ヒント、参考文献、アルゴリズム、アプローチを取得すると思いました。

私の主な関心は Map Reduce ベースのアルゴリズムですが、新しい Hadoop プログラミング モデルや、たとえばPiCloudの使用を検討してもかまいません。

ここで、素数生成に関するいくつかの興味深い質問があるようです: herehere、およびhere ですが、並列アプローチに関連するものは何もありませんでした。

前もって感謝します。

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

algorithm - a%b = k となる配列内のペアを検索します。ここで、k は指定された整数です

これは、私が見つけた興味深いプログラミング パズルです。正の整数の配列と数値 K が与えられた場合、 となるような配列からペア (a,b) を見つける必要がありますa % b = K

これに対する単純なO(n^2)ソリューションがあり、a%b=k のようなすべてのペアをチェックできます。機能しますが、非効率的です。私たちは確かにこれよりもうまくやることができますよね?同じための効率的なアルゴリズムはありますか? ああ、それは宿題ではありません。

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

number-theory - xy+yz+ xz = N の異なる解の数

私はspojの問題を解決しようとしています。ここに問題へのリンクがあります。

http://www.spoj.pl/problems/TAP2012B/

私が解釈したことから、式 xy+yz+xz = N の解の数を見つける必要があります。ここで、n は与えられています。x>=y>=z z はゼロにすることができます。しかし、x と y はできません。3つのforループを実装することでこれを解決しようとしました(悪いアプローチ)。正しい答えを出していますが、遅すぎます。また、他の人がすぐに解決したので (0.00)、この問題には非常に異なるアプローチがあると確信しています。N = 20 の場合、異なる解の数は 5 です: (6,2,1) (5,4,0) (10,2,0) (4,2,2,) (20,1,0)

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

c - 出力のモジュロ演算

プログラムの出力が非常に大きいと推定されるほとんどのコーディング競技では、通常、出力を10000007(またはその場合は素数)で割るように指示されます。同じ番号が100004として与えられていることがわかりました(つまり、素数ではありません)。

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

c++ - C++ 数論ライブラリ (スレッドセーフ、クロスプラットフォーム)

長整数と多項式演算をサポートする、最適化されたクロスプラットフォームでスレッドセーフなC/C++ ライブラリを探しています。

NTLと Lidiaの機能は十分ですが、スレッドセーフではありません。

Flintについてはよくわかりませんが、クロスプラットフォームではないようです。

誰でも助けることができますか?

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

python - 素数/指数のリストがある場合、数値の乗法分割をすべて生成する方法は?

たとえば、24 の素因数分解は 2^3*3^1 であり、次のように記述できます。

私は1つ見逃したかもしれませんが、あなたはアイデアを得る.

他のスレッドを調べてみましたHow to find multiplicative partitions of any integer? しかし、正直なところ、答えを理解できませんでした。

誰かにコードを書いてもらう必要はありませんが、効率的なアルゴリズムを作成するための助けを借りることができます (おそらく再帰的なものでしょうか?)。

私はPythonでコーディングしています。