POJ 1504反转相加再反转

来源:互联网 发布:怎么算包皮正常知乎 编辑:程序博客网 时间:2024/06/17 19:09

题意:给定两个数,将两个数反过来相加再反过来

思路:先算反正过来的数,然后再相加,然后再转过来就行了。水题……不多废话了……

代码如下:

#include<iostream>
#include<cmath>
using namespace std;
int main()
{
    int n;
    cin>>n;
    while(n--)
    {
        int a,b,p,q,m1=-1,m2=-1,m=-1,a1,b1,sum1=0,sum2=0,sum=0;
        cin>>a>>b;
        a1=a;b1=b;
        while(a1)
        {
            m1++;
            a1/=10;
        }
        while(b1)
        {
            m2++;
            b1/=10;
        }
        while(a)
        {
            sum1+=a%10*pow(10,m1*1.0);
            a/=10;
            m1--;
        }
        while(b)
        {
            sum2+=b%10*pow(10,m2*1.0);
            b/=10;
            m2--;
        }
        p=q=sum1+sum2;
        while(q)
        {
            m++;
            q/=10;
        }
        while(p)
        {
            sum+=p%10*pow(10,m*1.0);
            p/=10;
            m--;
        }
        cout<<sum<<endl;
    }
    return 0;
}

原创粉丝点击