Pagini recente » Cod sursa (job #2771874) | Cod sursa (job #584484) | Cod sursa (job #1153158) | Cod sursa (job #3212974) | Cod sursa (job #2420840)
#include <fstream>
#include <vector>
#include <algorithm>
#include <iostream>
#define pb push_back
#define nmax 100005
#define ll long long int
using namespace std;
ifstream fin("shop.in");
ofstream fout("shop.out");
ll n,c,l,poz[33],nr[33], v[33],ans[33],suma;
int main()
{ int i, a, b,t, maxim;
fin >> n >> c >> l;
for(i = 1; i <= n; ++i)
{
fin >> a >> b;
poz[a] = i;
nr[a] = b;
maxim = max(maxim, a);
}
v[0] = 1;
for(i = 1; i <= maxim; ++i)
v[i] = v[i - 1] * c;
for(i = maxim; i >= 0; --i)
{
if(poz[a])
{
t = min(l/v[i], nr[i]);
l -= t * v[i];
ans[poz[i]] = t;
suma += t;
}
}
fout << suma << '\n';
for(i = 1; i <= n; ++i)
fout << ans[i] << " ";
return 0;
}