Cod sursa(job #39137)

Utilizator ionescu_bogdanIonescu Bogdan-Gabriel ionescu_bogdan Data 26 martie 2007 14:19:41
Problema Shop Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define nmax 128

long long n,c,l,a[nmax],pow[nmax],np,i,j,sol,nr,x,y,aa[nmax];

int main()
{
	freopen("shop.in","r",stdin);
	freopen("shop.out","w",stdout);

	scanf("%lld%lld%lld",&n,&c,&l);
	for (i=0;i<n;i++)
		scanf("%lld%lld",&x,&y),a[x]=y,aa[i]=x;
	while (l)
		pow[np]=l%c,l/=c,++np;
	for (i=np-1;i>=0;i--)
	{
		nr=nr*c+pow[i];
		if (a[i]>=nr)
			sol+=nr,a[i]=nr,nr=0;
		else
			nr-=a[i],sol+=a[i];
	}
	printf("%lld\n",sol);
	for (i=0;i<n;i++)
		printf("%d ",a[aa[i]]);

	return 0;
}