poj 1504

来源:互联网 发布:禁止卸载软件 编辑:程序博客网 时间:2024/06/07 18:28

#include<stdio.h>
#include<string.h>
int reverse(int x){
 int sum=0;
 int b;
 while(x!=0){
    b=x%10;
 x=x/10;
 sum=sum*10+b;
 
 }
  return sum;
 

}
int main(){
     int caseNum;
  scanf("%d",&caseNum);
  while(caseNum--){
       int x,y;
    int sum;
    scanf("%d%d",&x,&y);
        sum=reverse(x)+reverse(y);
  printf("%d\n",reverse(sum));


  }


 return 0;

}

 

 

import java.io.*;
import java.util.*;
import java.math.*;
public class Main {

 /**
  * @param args
  */
 public static void main(String[] args) throws Exception {
  // TODO 自动生成方法存根
   Scanner cin=new Scanner(System.in);
   int num=Integer.valueOf(cin.nextLine()).intValue();
         String b;
         String c;
         int a,d,sum=0;
         String[] k=new String[2];
   for(int i=0;i<num;i++){
    k=cin.nextLine().split(" ");
    b=k[0];
    c=k[1];
    a=Integer.valueOf(reverse(b)).intValue();
    d=Integer.valueOf(reverse(c)).intValue();
    sum=a+d;
    System.out.println(reverse(""+sum));
   }
 
 }

public static String reverse(String temp){
  int index=temp.length()-1;
  while(index>=0  &&  temp.charAt(index)=='0') index--;
 
  String str=temp.substring(0, index+1);
  StringBuffer sb=new StringBuffer();
  if(index<0) sb.append(0);
  else{
   for(int i=str.length()-1;i>=0;i--)
 
   sb.append(str.charAt(i));
  }
 
 return sb.toString();
}
}

 

 

 

 //下面的程序自己写的,不知道有什么问题。就是通不过去

/*char temp[100];
char sum[100];
void reverse(char * a1,int n){
   int len=n-1;
   while(a1[len]=='0') len--;
   int i;
   char  temp;
   for(i=0;i<=len/2;i++)
   {
           temp=a1[i];
     a1[i]=a1[len-i];
     a1[len-i]=temp;

   }
   a1[len+1]='\0';
 
}
void Add(char *a1,char *a2)
{
  int len1=strlen(a1)-1;
  int len2=strlen(a2)-1;
  int i=0;
  int y1,y2;
  int inc=0;
  while(len1>=0 || len2>=0){
    
   if(len1<0) y1=0;
   else y1=a1[len1--]-'0';
   if(len2<0) y2=0;
   else y2=a2[len2--]-'0';
   temp[i++]=(y1+y2+inc)%10+'0'; 
   inc=(y1+y2+inc)/10;
  }
  if(inc>0) temp[i++]=inc+'0';
   int j=0;
   int k;
   for(k=0;k<i;k++) sum[j++]=temp[i-1-k];
   sum[j]='0';
   reverse(sum,strlen(sum));

}
int main(){

 int a;
 char b[100],c[100];
 scanf("%d",&a);
 while(a--){
  scanf("%s%s",b,c);
  reverse(b,strlen(b));
  reverse(c,strlen(c));
       Add(b,c);
      if(sum[0]=='\0') printf("0\n");
    else printf("%s\n",sum);


 

 }

 

 return 0;

}
*/

原创粉丝点击