ふみをチャレンジ[3]
とりあえず3日間やって来れた。三日坊主打破まであと1日。でも問題は明後日以降かな、大学始まるし。実はもう始まってるんだけど。ロックマンエグゼ2のハードモードが意外と難しい…
あと、ですます調やめた。
問題
0002: Digit Number - AIZU ONLINE JUDGE
桁数を求めるには、
figure = (int)log10( variable ) + 1
みたいにすればいいってここに書いてあったから、それを利用した。
答案
C
#include <stdio.h> #include <math.h> int main() { int a, b, sum, digit; while(scanf("%d %d", &a, &b) != EOF) { sum = a + b; digit = (int)log10(sum) + 1; printf("%d\n", digit); } return 0; }
反省
問題分の「入力の終わりまで処理して下さい」の意味がわからなくて、whileを無限ループにして提出したらTime Limit Exceededだと言われた。AOJのWEB Boardで確認すると、
while(scanf("%d", &n) != EOF) { /* ここに処理 */ }
こういうことだったそうだ。なるほど。
後ろの方の問題をチラッと見たら、かなり難しそうなんだけど大丈夫かな…