Cod sursa(job #2210654)

Utilizator _Victor_Victor Ciobanu _Victor_ Data 7 iunie 2018 15:22:02
Problema Shop Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("shop.in");
ofstream fout("shop.out");

struct moneda{
	int a,b,ord;
};

bool cmp(moneda m1,moneda m2){
	return m1.a>m2.a;
}

int main(){
	moneda M[31];
	long long l,s=0;
	int n,c,S[31];
	fin>>n>>c>>l;
	for(int i=0;i<n;i++){
		fin>>M[i].a>>M[i].b;
		M[i].ord = i;
	}
	sort(M,M+n,cmp);
	for(int i=0;i<n;i++){
		long long val = pow(c,M[i].a),nr = l/val; 
		if (nr>M[i].b) nr=M[i].b;
		S[M[i].ord]=nr;
		s+=nr;
		l-=val*nr;
	}
	fout<<s<<'\n';
	for(int i=0;i<n;i++){
		fout<<S[i]<<' ';
	}
	return 0;
}