Pagini recente » Cod sursa (job #702362) | Cod sursa (job #1925243) | Cod sursa (job #2159805) | Cod sursa (job #879016) | Cod sursa (job #2178590)
#include <bits/stdc++.h>
#define ll long long
using namespace std;
ifstream in("shop.in");
ofstream out("shop.out");
struct lol{
ll pw, freq, id;
};
int n;
ll c, L, ans, sol[50];
lol a[50];
bool cmp(const lol &a, const lol &b){
return a.pw > b.pw;
}
int main(){
in >> n >> c >> L;
for(int i = 1; i <= n; i++)
in >> a[i].pw >> a[i].freq, a[i].id = i;
sort(a + 1, a + n + 1, cmp);
for(int i = 1; i <= n; i++){
ll pw = 1;
for(int j = 1; j <= a[i].pw; j++)
pw *= c;
if(pw <= L){
ll aux = min(a[i].freq, L / pw);
ans += aux;
sol[a[i].id] = aux;
L -= (aux * pw);
}
}
out << ans << '\n';
for(int i = 1; i <= n; i++)
out << sol[i] << ' ';
return 0;
}