Cod sursa(job #940442)

Utilizator rudarelLup Ionut rudarel Data 16 aprilie 2013 11:27:37
Problema Next Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include<fstream.h>
#define N 1000000
char s[N],e[N];
int x[20],u[20];
long n,i,k,j,t,l,r;
long long d,m;
 
long long mod(char s[N],long n,long long d)
{long i;
long long t=0;
for(i=0;i<n;i++)
       t=(t*10+(s[i]-'0'))%d;
return t;}
 
int main()
{ifstream f("next.in");
ofstream g("next.out");
f>>s;
f>>d;
n=strlen(s);
m=(d-mod(s,n,d))%d;
while(m)
        x[++k]=m%10,m/=10;
for(i=1;i<=k;i++)
        u[i]=x[k-i+1];
for(i=n-1,j=k,t=l=0;i>=0&&j;i--,j--,t/=10)
        e[++l]=((t+=(s[i]-'0')+u[j])%10)+'0';
for(r=i;r>=0;r--,t/=10)
        e[++l]=((t+=(s[r]-'0'))%10)+'0';
for(r=j;r;r--,t/=10)
        e[++l]=((t+=u[r])%10)+'0';
if(t)
        e[++l]=t+'0';
for(i=l;i;i--)
        g<<e[i];
return 0;}