Pagini recente » Cod sursa (job #5041) | Cod sursa (job #2969803) | Cod sursa (job #2132645) | Cod sursa (job #2513066) | Cod sursa (job #38066)
Cod sursa(job #38066)
#include <fstream>
#include <iostream>
using namespace std;
ifstream f1("shop.in");
ofstream f2("shop.out");
long long a[40]={0}, baux;
main()
{
int n,c,cif[60]={0},k,i, aaux, p[40], suma=0;
bool stop;
unsigned long long l;
f1>>n>>c>>l;
for (i=1; i<=n; i++)
{
f1>>aaux>>baux;
a[aaux]=baux;
p[i]=aaux; //doar la sfarsit
}
k=-1;
while (l>0)
{
k++;
cif[k]=l%c;
l/=c;
}
//for (i=0; i<=k; i++)
//cout<<cif[i];
stop=false;
while(!stop)
{
stop=true;
for (i=k; i>=0; i--)
{
//cout<<a[i]<<endl;
if (cif[i]>a[i])
{
cif[i]-=1;
cif[i-1]+=c;
stop=false;
}
}
}
suma=0;
for (i=0; i<=k; i++)
suma+=cif[i];
f2<<suma<<endl;
for (i=1; i<=n; i++)
f2<<cif[p[i]]<<" ";
f2<<endl;
//cin>>i;
f2.close();
f1.close();
return 0;
}