Pagini recente » Cod sursa (job #1683975) | Cod sursa (job #890039) | Cod sursa (job #1839494) | Cod sursa (job #1093663) | Cod sursa (job #895639)
Cod sursa(job #895639)
#include <iostream>
#include <fstream>
#include <cstring>
# define nmax 10000010
using namespace std;
ifstream in ("next.in");
ofstream out("next.out");
int v[nmax],n,i,t,ok,c,j;
long long r,d;
char s[nmax];
int mod(int A[], int B)
{
int i, t = 0;
for (i = A[0]; i > 0; i--)
t = (t * 10 + A[i]) % B;
return t;
}
int main()
{
in.getline(s,nmax);
in>>d;
n=strlen(s);
v[0]=n;
for(i=n;i>=1;i--)
v[i]=s[n-i]-48;
r=mod(v,d);
if(r==0)
out<<s<<'\n';
else
{
r=d-r;
i=1;
while(r)
{
c=r%10;
r=r/10;
v[i]+=c;
j=i;
while(v[j]>9)
{
if(j==n)
n++;
v[j+1]+=v[j]/10;
v[j]=v[j]%10;
j++;
}
i++;
}
for(i=n;i>=1;i--)
out<<v[i];
out<<'\n';
}
in.close();
out.close();
return 0;
}