您的位置:首页 > 其它

ZOJ 2001 Adding Reversed Numbers

2013-03-08 12:49 411 查看
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2001

#include <cstdio>
#include <string>
#include <iostream>
#include <vector>
using namespace std;
int main()
{
string sa,sb,st;
vector<int>v;
int a,b,sum;
int p,u;
cin>>sa;
while(cin>>sa>>sb)
{
u=0;
p=0;
if(sa.size()<sb.size())
{
st=sa;
sa=sb;
sb=st;
}
for(int i=0;i<sa.size();i++)
{
a=sa[i]-'0';
if(i>=sb.size()) b=0;
else b=sb[i]-'0';
sum=a+b+p;
p=sum/10;
v.push_back(sum%10);
}
if(p==1) v.push_back(1);
while(1)
{
vector<int>::iterator it=v.end()-1;
if(*it==0) v.erase(it);
else break;
}
for(int j=0;j<v.size();j++)
{
if(u==0&&v[j]!=0) u=1;
if(u==1) cout<<v[j];
}
cout<<endl;
v.clear();
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: