Cod sursa(job #2415789)

Utilizator mariastStoichitescu Maria mariast Data 26 aprilie 2019 15:16:04
Problema Shop Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.78 kb
#include<fstream>
#include<algorithm>
using namespace std;
ifstream f("shop.in");
ofstream g("shop.out");

struct el{
    long long val;
    long long numar;
    int poz;
}a[100];
int n;
long long c,vec[100],l,x,val[100],total;
bool cmp(el A,el B){
    return (A.val>B.val);
}
int main()
{
    f>>n>>c>>l;
    vec[0]=1;
    for(int i=1;i<=32;++i){
        vec[i]=vec[i-1]*c;
        if(vec[i]>=l) break;
    }
    for(int i=1;i<=n;++i){
        f>>x>>a[i].numar;
        a[i].val=vec[x];
        a[i].poz=i;
    }
    sort(a+1,a+n+1,cmp);
    for(int i=1;i<=n;++i){
        x=min(l/a[i].val,a[i].numar);
        val[a[i].poz]=x;
        total+=x;
        l=l-x*a[i].val;
    }
    g<<total<<'\n';
    for(int i=1;i<=n;++i){
        g<<val[i]<<" ";
    }
}