Pagini recente » Cod sursa (job #1390571) | Cod sursa (job #2835481) | Cod sursa (job #1957116) | Cod sursa (job #292329) | Cod sursa (job #40113)
Cod sursa(job #40113)
#include<stdio.h>
int n,c,i,j,nr[31],m;
struct {int a,n,i;}a[31],aux;
long long l,C[33];
int main()
{freopen("shop.in","r",stdin);
freopen("shop.out","w",stdout);
scanf("%d %d %lld",&n,&c,&l);
C[0]=1;
for(i=1;i<=32;i++)
C[i]=C[i-1]*c;
for(i=1;i<=n;i++) {scanf("%d %d",&a[i].a,&a[i].n);a[i].i=i;}
for(i=1;i<n;i++)
for(j=i+1;j<=n;j++)
if(a[i].a<a[j].a) {aux=a[i];a[i]=a[j];a[j]=aux;}
i=0;
while(l)
{nr[a[i].i]=l/C[a[i].a];
if(nr[a[i].i]>a[i].n) nr[a[i].i]=a[i].n;
m=m+nr[a[i].i];
l=l-nr[a[i].i]*C[a[i].a];
i++;}
printf("%d\n",m);
for(i=1;i<=n;i++)
printf("%d ",nr[i]);
return 0;}