Pagini recente » Cod sursa (job #324149) | Cod sursa (job #565359) | Cod sursa (job #636822) | Cod sursa (job #3127093) | Cod sursa (job #2498015)
#include <bits/stdc++.h>
using namespace std;
ifstream in("shop.in");
ofstream out("shop.out");
struct bobu
{
int p, nr, ind;
}B[35];
long long l;
int n, c, k = 0;
int Sol[1000000];
bool cmp(bobu x,bobu y)
{
return x.p > y.p;
}
int main()
{
in >> n >> c >> l;
for(int i = 1;i <= n;i++)
{
in >> B[i].p >> B[i].nr;
B[i].ind = i;
}
sort(B + 1,B + n + 1,cmp);
for(int i = 1;i <= n && l;i++)
{
long long bnc = pow(c, B[i].p);
while(l - bnc >= 0 && B[i].nr - 1 >= 0)
{
B[i].nr--;
k++;
l -= bnc;
Sol[B[i].ind]++;
}
}
out << k << '\n';
for(int i = 1;i <= n;i++)
out << Sol[i] << " ";
return 0;
}