HDU 1229 아니면 A + B?

1461 단어 C 언어ACMHDUOJ1229
아니면 A + B?
Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other)
Total Submission(s) : 5   Accepted Submission(s) : 3 Problem Description
10000 보다 작은 정수 A 와 B 두 개 를 읽 고 A + B 를 계산 합 니 다.주의해 야 할 것 은 A 와 B 의 끝 K (8 을 초과 하지 않 음) 자리 숫자 가 같 으 면 직접 출력 하 십시오 - 1.
 
Input
테스트 입력 은 몇 가지 테스트 용례 를 포함 하고 모든 테스트 용례 는 한 줄 을 차지 하 며 형식 은 'A B K' 이 고 인접 한 두 숫자 는 빈 칸 간격 이 있 습 니 다.A 와 B 가 동시에 0 일 때 입력 이 끝나 면 해당 결 과 는 출력 하지 마 십시오.
 
Output
모든 테스트 용례 에 1 줄, 즉 A + B 의 값 또는 - 1 을 출력 합 니 다.
Sample Input
1 2 1
11 21 1
108 8 2
36 64 3
0 0 1
 
Sample Output
3
-1
-1
100
#include<stdio.h>
int a[2000];
int b[2000];
int main()
{
    int i,j,n,m,k,flag1,flag2,x1,x2,v1,v2,count;
    while(scanf("%d %d %d",&n,&m,&k),n!=0&&m!=0)
    {
        x1=n,x2=m;flag1=0,flag2=0;
        count=k;v1=0,v2=0;
        while(count--)
        {
           a[v1++]=x1%10;
           b[v2++]=x2%10;
           x1/=10,x2/=10;
        }
        for(i=v1-1;i>=0;i--)
        {
           flag1=flag1*10+a[i];
           flag2=flag2*10+b[i];
        }
        if(flag1!=flag2)
        printf("%d
",n+m); else printf("-1
"); } return 0; }

 

좋은 웹페이지 즐겨찾기