|
uchinyan |
|
#26290
ちょっと不思議なんですが、なかなか奥が深いようです。 >だって、切り上げだから、<>内が、[10002/(1+s/100)] と等しい時が起こりそう。 >ということは、2個余分に数え上げてる可能性がありますから、そのときは、もう+1 が必要な気がするんですが。。。 例えば、今回の問題、s = 7 の場合、 <10001/(1+7/100)> = <9346.7...> = 9347 [10002/(1+7/100)] = [9347.6...] = 9347 で、確かに一致しますが、 10001 - <10001/(1+7/100)> = 10001 - 9347 = 654 となり、正解です。また、10000 - [10001/(1+s/100)] でダメだった s = 37 の場合、 <10001/(1+37/100)> = <7300> = 7300 [10002/(1+37/100)] = [7300.7...] = 7300 で、やはり一致しますが、 7299 * 1.37 = 9999.63 -> 9999 7300 * 1.37 = 10001 -> 10001 なので、答えは、10000 - 7299 = 2701 ですが、 10001 - <10001/(1+30/100)> = 10001 - 7300 = 2701 となって、正解を与えます。 実際、[10002/(1+s/100)] と一致する場合は多々ある、むしろ一致する方が多い、のですが、 プログラムでチェックした限りでは、それで問題ないようで、正しい答えを与えるようです。 なお、例えば、s = 30 は、 <10001/(1+30/100)> = <7693.07...> = 7694 [10002/(1+30/100)] = [7693.8...] = 7693 で一致しませんが、 7692 * 1.30 = 9999.6 -> 9999 7693 * 1.30 = 10000.9 -> 10000 7694 * 1.30 = 10002.2 -> 10002 なので、答えは、10000 - 7693 = 2307 ですが、やはり、 10001 - <10001/(1+30/100)> = 10001 - 7694 = 2307 となって、正解を与えます。 細かい理屈は、よく分かりませんが、少なくともスモークマンさんのお考えは、残念ながら、正しくないようです。 偶然なんだろうか。でも、偶然にしてはうまく行き過ぎているような...? |
|
ネコの住む家
12月5日(月) 18:49:04
MAIL:uchi@sco.bekkoame.ne.jp 26292 |