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";
}
}