Cod sursa(job #477753)

Utilizator c_adelinaCristescu Adelina c_adelina Data 16 august 2010 11:39:03
Problema Next Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <cstdio>
#include <cstring>

int n[1000003],i;
	long long k;

long long mod(int A[1000003], long long B)  
{  
      long long i, t = 0;  
      for (i = A[0]; i > 0; i--)  
              t = (t * 10 + A[i]) % B;  
      return t;  
}  

void add(int A[1000003],long long B)
{
	
	for (i=1; i<=A[0] || B>0;++i)
		B+=A[i],A[i]=B%10,B/=10;
	if (i>A[0]) A[0]=i-1;
}




int main()
{
	
	char s[1000003];
	freopen("next.in","r",stdin);
	freopen("next.out","w",stdout);
	scanf("%s\n%lld",s,&k);
	n[0]=strlen(s);
	for (i=0;i<n[0];++i)
		n[n[0]-i]=s[i]-'0';
	add(n,k-mod(n,k));
	for (i=n[0];i>0;--i) printf("%d",n[i]);
	return 0;}