ふみをチャレンジ[8]
センター試験1日目、受験生のみなさんお疲れ様です。残りの科目も頑張ってください。
答案
C
以下、Wrong Answer。
#include <stdio.h> #include <math.h> int main() { int n, debt = 100000; scanf("%d", &n); while(n > 0) { debt = ceil(debt * 1.05 / 1000) * 1000; n--; } printf("%d\n", debt); return 0; }
反省
答え合ってるはずなんだけど…Wrong Answerが返される。なんでー??
[追記] (2012-01-15)
腑に落ちないのだが、他のブログに載っていた方法でやってみると、正解になった。
上の僕の方法がなぜ間違いになるか分かる方いらっしゃったら、指摘していただければ幸いです。
#include <stdio.h> int main() { int n, debt = 100000; scanf("%d", &n); while(n > 0) { debt *= 1.05; if(debt % 1000 != 0) { debt += 1000 - (debt % 1000); } n--; } printf("%d\n", debt); return 0; }