問題タブ [greatest-common-divisor]

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

mips - 無限ループを開始する GCD mips プログラム

私が信じているスタックに問題があります。私はそれを段階的に数回実行しましたが、このセクションに到達するたびに、ゼロに等しくない数を見つけるブランチが「繰り返し」続けるまで正常に動作しますが、変更なしで「GCD」に戻るだけですスタックまたは引数で、無限ループを開始します。最初の「jal GCD」の前に「#」を入れてみましたが、「lw $a2, 8($s1)」に到達するとプログラムが停止し、例外が発生します。商が引数 2 を置き換え、GCD の検索を続行できるようにするにはどうすればよいですか?

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

python - 2^i-1 形式の数値の GCD

1<=a[x]<=100 で GCD(2^a[i]-1,2^a[j]-1) を取得するにはどうすればよいですか

数が多いと問題が発生し、実行時エラーが発生します。
素数が 1 とそれ自体以外に因数を持たない場合を除いて、2^i-1 の値にパターンは見られません。

編集:フォーム 2^i-1 のみの数値についてこれを解決する必要があります。コードは次のとおりです。

入力サンプル:

制約:

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

c++ - 配列内にいくつの異なる float 値があるかを調べる

n組の整数xyが与えられた問題のセクションを解くには、異なるx/yがいくつあるかを見つける必要があります。(小数点以下の正確な値)

1.

もちろん、以前のすべてのペアを反復処理して、同じx/y値が以前に発生したかどうかを確認することもできますが、それには(n^2)/2時間かかると思います。

ハッシュ テーブルを使用してみましたが、float 値ではうまく機能しないようです。たぶん、非常に優れたハッシュ関数で機能するでしょう。

2.

xyが整数であることを考慮して、問題に対して別のアプローチを試みました。

  • 各ペアの最大公約数を計算します
  • xyを GCD で割る
  • 行列 m[max_value_of_x][max_value_of_y] を使用して、次のようにします。

    /li>
  • すべてのペアに対してこれを行った後、cntは異なる float 値の数になるはずです。

これはかなりの時間で実行できると思いますが。それは間違いなくスペース効率が悪いです。実際の問題では、xyの最大値は 1000 ですが、割り当てられたメモリはかなり少なくなっています。

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

c++ - C コードを C++ に変換しようとしています - 対話型バイナリ ユークリッド アルゴリズム

一部のコードを C から C++ に変換しようとしましたが、どこが間違っているのか教えてください。ありがとう

どういうわけか、誰かがこのような些細な質問をするたびに、「自分で宿題をしなさい」などと言われるので、これは宿題ではないことを指摘しておきます。再度、感謝します

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

c - Cを使用して複数のユーザー入力値のgcdを見つける

「現代的なアプローチのCプログラミング 第2版」を使ってCを学んでいます。ユーザーから 2 つの数値を受け取り、gcd を返す関数を作成する必要があった演習の 1 つです。複数の数値を渡せるようにしたいのですが、C を使用してこれを実現する方法がわかりません。

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

c - 2 つの数値の GCD を見つける最速の方法は何ですか?

サイズ n の配列があります。特定の番号を持つ各要素の GCD を見つける必要があり、それが 1 より大きい場合は、別の配列に追加します。これを行う最速の方法は何ですか?

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

greatest-common-divisor - GCDメソッドを使用せずに素数を見つける

標準の GCD アルゴリズムを使用せずに、与えられた 2 つの数値が互いに素であるかどうかを知ることは可能ですか?ユークリッド、バイナリ GCD、レーマーのアルゴリズムを使用しました。可能であれば、これらよりも高速な方法を提案してください。2 つの数値は 10^5 まで大きくなる可能性があるため、Faray シーケンスを生成しても役に立ちません。

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

java - 再帰を使用し、ユークリッドのアルゴリズムを実装して、ユーザーから 3 つの数値の GCD を見つける

ユーザーに 3 つの数値を入力してから、再帰を使用している間、ユークリッドのアルゴリズムを使用してプログラムに GCD を計算させたいと考えています。

私のコードは現在、2 つの入力数値を実装しています。a と b の GCD を計算し、それを結果 d と呼ぶアプローチを理解しています。次に、3 番目の入力 (c) と d を使用して GCD を見つけ、基本的に Euclid のアルゴリズムをもう一度繰り返します。これをコードに実装する方法がわかりません。

本当に私を悩ませているのは、再帰を使用して問題を解決することです。

これまでのところ、実装する必要があることはわかっています:

どんな助けや提案も大歓迎です!