Pagini recente » Cod sursa (job #3173981) | Cod sursa (job #2552013) | Cod sursa (job #1891800) | Cod sursa (job #2656922) | Cod sursa (job #2498530)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("shop.in");
ofstream fout("shop.out");
struct coin
{
int a, b, idx;
bool operator <(const coin &aux)const
{
return a > aux.a;
}
}x[31];
int n, c;
long long l;
int sol[31];
int main()
{
fin >> n >> c >> l;
for(int i = 1; i <= n; ++i)
{
fin >> x[i].a >> x[i].b;
x[i].idx = i;
}
sort(x + 1, x + n + 1);
int nr_sol = 0;
for(int i = 1; i <= n; ++i)
{
long long sum = pow(c, x[i].a);
long long nr = min(l / sum, 1LL*x[i].b);
l = l - nr * sum;
sol[x[i].idx] = nr;
nr_sol = nr_sol + nr;
}
fout << nr_sol << "\n";
for(int i = 1; i <= n; ++i) fout << sol[i] << " ";
fout << "\n";
return 0;
}