Submission

Status:

PPPPPPPPPPPPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: SayRo

Problemset: Slowly Express

Language: cpp

Time: 0.004 second

Submitted On: 2026-10-07 09:48:27

#include<iostream>
#include<vector>
#include<algorithm>

int main(){
    int input,remain=0,sum=0;
    int count=0;
    std::vector<int> box;
    while(true){
        std::cin >> input;
        if(input<0) break;
        box.push_back(input);
        count++;
    }

    int order[count];
    std::fill(order,order+count,0);
    int available=0;

    for(int i=0;i<count;i++){
        int day=0;
        sum+=box[i];
        while(sum>=500-remain){
            available=800-remain;
            if(sum>=available){
                sum-=available;
                if(sum<500){
                    remain=sum;
                    sum=0;
                }else remain=0;
                day++;
            }else{
                remain=0;
                sum=0;
                day++;
            }
        }
        order[i]=day;
    }
    for(int i=0;i<count;i++){
        std::cout << order[i];
        if(i!=count-1) std::cout << "\n";
    }
}