NYOJ-844-A+B Problem(V)-2013年10月27日15:17:45

A+B Problem(V)

时间限制: 1000 ms  |  内存限制: 65535 KB
难度: 1
描述
做了A+B Problem之后,Yougth感觉太简单了,于是他想让你求出两个数反转后相加的值。帮帮他吧
输入
有多组测试数据。每组包括两个数m和n,数据保证int范围,当m和n同时为0是表示输入结束。
输出
输出反转后相加的结果。
样例输入
1234 1234
125 117
0 0
样例输出
8642
1232

 
# include<stdio.h>
# include<string.h>
# include<stdlib.h>
int main()
{
	int m,n,i,j,m1[30],n1[30],m2,n2,sum;
	while(scanf("%d %d",&m,&n) && m!=0 || n!=0)
	{
		memset(m1,0,sizeof(m1));
		memset(n1,0,sizeof(n1));
		i = 0;
		while(m)
		{
			m1[i++] = m%10;
			m/=10;
		}
		i = 0;
		while(n)
		{
			n1[i++] = n%10;
			n/=10;
		}
		m2 = 0;
		n2 = 0;

		for(i=29;i>=0;i--)
			if(m1[i]!=0)
				break;
		for(j=0;j<=i;j++)
			m2 = m2*10 + m1[j];
		for(i=29;i>=0;i--)
			if(n1[i]!=0)
				break;
		for(j=0;j<=i;j++)
			n2 = n2*10 + n1[j]; 
		sum = n2 + m2;
		printf("%d\n",sum);
	}

	return 0;
}        


你可能感兴趣的:(NYOJ-844-A+B Problem(V)-2013年10月27日15:17:45)