View Code of Problem 3829

#include <stdio.h>

void scan(int a[], int n) {
    int i;
    for(i=0;i<n;i++) {
        scanf("%d",&a[i]);
    }
}


void init(int sum[], int n) {
    int i;
    for(i=0;i<n;i++) {
        sum[i]=0;
    }
}

void print(int sum[], int n) {
    int i;
    for(i=0;i<n;i++) {
        printf("%d",sum[i]);
        if(i<n-1) {
            printf(" ");
        }
    }
    printf("\n");
}

void eat(int sum[], int a[], int b[], int n) {
    int i,j;
    for(i=0;i<n;i++) {
        for(j=i;j<n;j++) {
            if(a[i]<b[j]) {
                break;
            }
            a[i]-=b[j];
            sum[j]+=b[j];
        }
        if(j<n) {
            sum[j]+=a[i];
            a[i] = 0;
        }
    }
}

int main() {
    int n;
    while(scanf("%d",&n)!=EOF) {
        int a[n],b[n],sum[n];
        scan(a,n);
        scan(b,n);
        init(sum,n);
        eat(sum,a,b,n);
        print(sum,n);
    }
    return 0;
}

Double click to view unformatted code.


Back to problem 3829