ホームページ  >  記事  >  バックエンド開発  >  数値 1316 を 2 つの数値の合計として表します。1 つは 13 の倍数、もう 1 つは 11 の倍数です。これら 2 つの数値を求めます。 _PHP チュートリアル

数値 1316 を 2 つの数値の合計として表します。1 つは 13 の倍数、もう 1 つは 11 の倍数です。これら 2 つの数値を求めます。 _PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 15:27:53947ブラウズ

アルゴリズム分析:

1316、明らかに 1300 は 13 の倍数ですが、16 は 11 の倍数ではありません。1300 から 13 の N 倍を引くと考えることができますが、結果は依然として 13 の倍数であり、16 と同じ長さになります。この減算に が追加されます。13 の N 倍の合計は 11 の倍数です。これら 2 つの数は解決できます。答えは複数ある場合がありますが、必要なのは 1 組の解を見つけることだけです。

注意深く観察すれば、(16+13*3) + (1300-13*3) = 1316 を見つけるのは難しくありませんが、これを達成するにはコードを使用する必要があります:

コードをコピーしますコードは次のとおりです:

$n=1316;
$i=0;//減算された N 番目の 13 は 0 に初期化されます
$y=16+13*$i;// 1316 プラス N 13s から分離され、ここでは 16 に初期化されます
while($y%11!=0){//16 プラス N 13 の合計が 11 に分割できない場合
$i++;//さらに 13 を追加します
$y =16+13*$ i;

エコー '$x='.($n-$y).'
';
エコー '$y='.$y?>


http://www.bkjia.com/PHPjc/323644.html

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/323644.html技術記事アルゴリズム分析: 1316。明らかに 1300 は 13 の倍数ですが、16 は 11 の倍数ではありません。1300 から 13 の N 倍を引くと考えることができますが、結果は依然として 13 の倍数です。つまり、16 が加算される限り、結果は 13 の倍数になります。この引き算に...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。