過去ログ

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

過去問題一覧へ戻る