Cod sursa(job #1174706)

Utilizator horatiu11Ilie Ovidiu Horatiu horatiu11 Data 23 aprilie 2014 18:30:04
Problema Shop Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include<fstream>
#include<algorithm>
using namespace std;
ifstream f("shop.in");
ofstream g("shop.out");
long long L;
int N, C, t;
struct monezi {long long v; int buc, nr; } x[32];
int y[32], z[32];
int cmp(monezi a, monezi b)
{
	return a.v>b.v;
}
int main()
{
	int a, i, j, c;
	f>>N>>C>>L;
	for(i=1; i<=N; i++)
	{
		f>>a>>x[i].buc;
		x[i].nr=i;
		x[i].v=1;
		for(j=1; j<=a; j++)
			x[i].v*=C;
	}
	sort (x+1,x+N+1,cmp);
	i=1;
	while(L)
	{	c=L/x[i].v;
		y[i]=min(c,x[i].buc);
		z[i]=x[i].nr;
		L=L-y[i]*x[i].v;
		t+=y[i];
		i++;
	}
	g<<t<<'\n';
	for(i=1; i<=N; i++)
	{	j=1;
		while(z[j]!=i) j++;
		g<<y[j]<<" ";
	}
	g<<'\n'; g.close(); return 0;
}