Pagini recente » Cod sursa (job #2857926) | Cod sursa (job #787296) | Cod sursa (job #1012111) | Cod sursa (job #1995000) | Cod sursa (job #1712496)
#include <cstdio>
#include <algorithm>
#define MAX 2000000
using namespace std;
typedef short int B[1000005];
B rez;
char f[MAX];
long long D,pos=0,MOD=0;
void Return(B arr, long long nr)
{
long long t=0;
for(int i=arr[0];i>0;i--)
{
t=t*10+arr[i];
while(t>=nr)
t-=nr;
}
MOD=t;
}
void Sum(B &s,long long nr)
{
long long t=nr,i=1;
while(t>0)
{
t+=s[i];
s[i]=t%10;
t/=10;
if(i==s[0]&&t>0)
s[0]++;
i++;
}
}
int main()
{
freopen("next.in","r",stdin);
freopen("next.out","w",stdout);
fread(f,1,MAX,stdin);
while(f[pos]>='0'&&f[pos]<='9')
rez[++rez[0]]=f[pos++]-'0';
short int T;
int i, j;
for(i=1, j=rez[0]; i<j; i++, j--){
T=rez[i];
rez[i]=rez[j];
rez[j]=T;
}
pos++;
while(f[pos]>='0'&&f[pos]<='9')
D=D*10+f[pos++]-'0';
Return(rez,D);
if(MOD>0)
{
long long x=D-MOD;
Sum(rez,x);
}
for(int i=rez[0];i>0;i--)
printf("%d",rez[i]);
return 0;
}