Cod sursa(job #212385)

Utilizator cnatlLaurian cnatl Data 5 octombrie 2008 12:30:44
Problema Next Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include<stdio.h>
#include<string.h>
#define N 1000010
char n[N];
long k,i,j,m,ln;
void citire(), modulo(), adunare(), scadere();
int main()
{	citire();
	modulo(); 
	scadere();
	adunare();
	printf("%s",n[i]);
	printf("\n");
	return 0;
}
void citire()
{	freopen("next.in","r",stdin); freopen("next.out","w",stdout);
	scanf("%s",&n);
	scanf("%ld",&k);
}
void modulo()
{	m=n[0]-'0';ln=strlen(n);
	for(i=1;i<ln;i++){ m=m*10+(long int)(n[i]-'0'); m%=k;}
}
void scadere()
{	k-=m;
}
void adunare()
{	i=ln-1;
while(k) {      n[i]+=(char)k%10; k/=10; 
if(n[i]>'9') { n[i-1]++; n[i]-=10;} i--; 
			}
while(n[i]>'9'){ n[i-1]++; n[i]-=10; i--;}
}