📄 1435.cpp
字号:
/* This Code is Submitted by wywcgs for Problem 1435 on 2005-03-26 at 12:17:44 */
#include <stdio.h>
#include <string.h>
int numLen(long);
int main()
{
long a[2][12] = {0};
char num[101];
int len, bit, high;
int i, j, flag;
while(gets(num) != NULL){
if(strcmp(num, "0")){
for(i = 0; i < 12; i++){
a[1][i] = 0;
}
len = strlen(num);
high = len % 9;
bit = len / 9;
for(i = 0; i < high; i++){
a[1][11-bit] = a[1][11-bit] * 10 + num[i] - '0';
}
for(i = 0; i < bit; i++){
for(j = 0; j < 9; j++){
a[1][11-bit+i+1] = a[1][11-bit+i+1] * 10 + num[i*9+j+high] - '0';
}
}
for(i = 0; i < 12; i++){
a[0][11-i] += a[1][11-i];
if(a[0][11-i] > 1000000000){
a[0][10-i] += (a[0][11-i] / 1000000000);
a[0][11-i] %= 1000000000;
}
}
}else{
break;
}
}
flag = 0;
for(i = 0; i < 12; i++){
if(a[0][i] == 0){
if(flag != 0){
for(j = 0; j < 9; j++){
printf("0");
}
}
}else if(a[0][i] >= 100000000){
flag = 1;
printf("%ld", a[0][i]);
}else{
if(flag != 0){
len = 9 - numLen(a[0][i]);
for(j = 0; j < len; j++){
printf("0");
}
}
printf("%ld", a[0][i]);
flag = 1;
}
}
printf("\n");
return 0;
}
int numLen(long a)
{
if(a >= 100000000){
return 9;
}else if(a >= 10000000){
return 8;
}else if(a >= 1000000){
return 7;
}else if(a >= 100000){
return 6;
}else if(a >= 10000){
return 5;
}else if(a >= 1000){
return 4;
}else if(a >= 100){
return 3;
}else if(a >= 10){
return 2;
}else if(a >= 1){
return 1;
}else{
return 0;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -