Cod sursa(job #45352)

Utilizator drag0shSandulescu Dragos drag0sh Data 1 aprilie 2007 13:42:57
Problema Next Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.01 kb
#include <string.h>
#include <fstream.h>
ifstream f("next.in");
ofstream g("next.out");
long long t,b,prel;
char a[1000001];
int x,y;
long i,j;
int main(){
 f.getline(a,1000001);    
 f>>b;
 for(i=0;i<strlen(a);i++) 
       t = (t*10 +a[i]-'0') % b; 
i=strlen(a)-1;t=b-t;
while (t&&i>=0 )     {
                              
                            x=t%10;
                            y=a[i]-'0'+x+prel;
                            if(y>9){a[i]=y%10+'0';prel=1;}
                            else {a[i]=a[i]+x+prel;prel=0;}
                            t/=10;
                            i--;
                            }
for(j=i;j>=0;j--)  {y=a[j]-'0'+prel;
                         if(y>9){a[j]=y%10+'0';prel=1;}
                         else {a[j]=a[j]+prel;prel=0;break;}   
                         }                              
if(prel)g<<prel ;
                           
g<<a;

//fprintf(g,"%d",strlen(a));
//fprintf(g,"%d",a[2]-10);
    f.close();
        f.close();
    return 0;

}