ACM_小Z的A+B

小Z的A+B

Time Limit: 2000/1000ms (Java/Others)

Problem Description:

小Z最喜欢A+B了,没事就研究研究,比如什么大整数A+B(就是1000万万亿+2000万万万万万亿这种),大浮点数A+B,大实数A+B,大数A+B的A+B次方,总之,A+B被他玩坏了,连字符串都要A+B。

Input:

多组数据输入,每组一行字符串(长度小于2000),由若干个非负数和加号组成,求所有数字之和。
数字都是合法的常规数字,不会有01这样的数字出现,且字符串第一个字符和最后个字符一定是数字。
加号至少一个,若多个加号在一起则认为是一个加号。

Output:

对于每组数据,单独一行输出小Z的A+B(结果在int范围内)

Sample Input:

1++++++3435+1

Sample Output:

3437
解题思路:简单处理字符串,水过!
AC代码:
 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 const int maxn=2005;
 4 char str[maxn];int sum,mul;
 5 int main(){
 6     while(cin>>str){mul=sum=0;
 7         for(unsigned int i=0;i<=strlen(str);++i){
 8             if(str[i]!='+'&&str[i]!='\0')mul=mul*10+str[i]-'0';
 9             else{sum+=mul;mul=0;}
10         }
11         cout<<sum<<endl;
12     }
13     return 0;
14 }

 

posted @ 2018-06-24 22:37  霜雪千年  阅读(122)  评论(0编辑  收藏  举报