can someone plz help me out y m i gettin wrong answer in my code(spoj).tried many intputs all of dem worked!! and sum tips to make my code more efficient.(42. Adding Reversed Numbers)http://www.spoj.pl/problems/ADDREV/
#include<stdio.h>
#include<math.h>
int rev(int x)
{int l,j,h,digits1,rev1=0,digit1[10]={0,0,0,0,0,0,0,0,0,0},v=0,p,u;
for(l=0;l<10;l++)
{ j=(int)pow(10,l);
if(j%10!=0&&l>=2)
j+=1;
h= x/j;
if(h==0)
break;
}
digits1=l;
for( p=0;p<=digits1-1;p++)
{
j=(int)pow(10,p);
if(j%10!=0&&p>=2)
j+=1;
digit1[p]=(x/j)%10;
}
for( u=digits1-1;v<=digits1;u--,v++)
{
j=(int)pow(10,u);
if(j%10!=0&&u>=2)
j+=1;
rev1+=digit1[v]*j;
}
return rev1;
}
int rar(int e,int f)
{int reverse1,reverse2,temp,reverse;
reverse1=rev(e);
reverse2=rev(f);
temp=reverse1+reverse2;
reverse=rev(temp);
return reverse;
}
int main()
{ int N,i,num1[10000],num2[10000],ans[10000];
//printf("input the no of cases%d\n");
scanf( "%d\n",&N);
for( i=0;i<N;i++)
{ int no1,no2;
//printf("input the nos separated by space%d\n");
scanf( "%d %d",&no1,&no2);
num1[i]=no1;
num2[i]=no2;
}
for( i=0;i<N;i++)
{
ans[i]=rar(num1[i],num2[i]);
printf("%d\n",ans[i]);
}
return 0;
}