Input
Each input file contains one test case. Each case contains a pair of integers a and b where -1000000 <= a, b <= 1000000. The numbers are separated by a space.
Output
For each test case, you should output the sum of a and b in one line. The sum must be written in the standard format.
Sample Input-1000000 9
Sample Output-999,991
這道題我提交了三次,第一次提交之后顯示部分正確,檢查了代碼發現輸出負號之后沒有對數進行處理,即后來判斷時-100000也小于1000啊。
改了之后提交第二次,測試結果正確的次數多了,還是部分錯誤,我又檢查了一下,用了幾個特殊的數來試,發現100000輸出的結果是100,0,因為沒有考慮后面的數字可能會發生沒有三位但是卻沒有自動補全0的情況。如果這個時候仍然使用使用C++可能麻煩很多,就想著要利用C語言的printf的輸出固定格式,沒有達到自動補全0,修改之后提交通過。
下面貼我的代碼:
#include <iostream>
using namespace std;
int main(void){
int a,b;
int sum=0;
while(cin>>a>>b){
sum=a+b;
if(sum<0){
sum=-sum;
cout<<"-";
}
if(sum<1000)
cout<<sum;
else if(sum>=1000&&sum<1000000)
printf("%d,%03d",(sum/1000),sum%1000);
else if(sum>=1000000)
printf("%d,%03d,%03d",sum/1000000,((sum%1000000)/1000),sum%1000);
}
return 0;
}
posted on 2014-07-26 10:40
兔兔的天空之城 閱讀(119)
評論(0) 編輯 收藏 引用