Cod sursa(job #751627)

Utilizator SteveStefan Eniceicu Steve Data 26 mai 2012 14:53:59
Problema Next Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <fstream>
#include <string>

using namespace std;

string s;
int N[1000010];
long long D;

ifstream fin ("next.in");
ofstream fout ("next.out");

void Citire ()
{
	fin >> s;
	N[0] = s.size ();
	for (int i = 0; i < N[0]; i++)
	{
		N[i + 1] = s[i] - 48;
	}
	fin >> D;
	fin.close ();
}

void Business ()
{
	long long a = 0, miu;
	for (int i = 1; i <= N[0]; i++)
	{
		a = (a * 10 + 1LL * N[i]) % D;
	}
	if (a == 0) return;
	D -= a;
	for (int i = N[0]; i >= 1; i--)
	{
		miu = N[i] + D;
		D = miu / 10;
		N[i] = miu % 10;
	}
	if (D > 0) N[1] += D * 10;
}

void Scriere ()
{
	for (int i = 1; i <= N[0]; i++)
	{
		fout << N[i];
	}
	fout.close ();
}

int main ()
{
	Citire ();
	Business ();
	Scriere ();
	return 0;
}