728x90
반응형
문제는 여기!
#include <bits/stdc++.h>
using namespace std;
int N, W, L; // 트럭의 수, 다리길이, 다리의 최대 하중
int A[1001];
int T = 0;
void solve(){
queue<int> q;
int sum = 0;
for(int i=0; i<N; i++){
while(1){
if(q.size()==W){ // 다리 위에 트럭 W개인 경우
sum -= q.front();
q.pop();
}
if(sum + A[i] <= L) break;
q.push(0);
T++;
}
q.push(A[i]);
sum += A[i];
T++;
}
T += W;
cout << T;
}
void input(){
cin >> N >> W >> L;
for(int i=0; i<N; i++){
cin >> A[i];
}
}
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
input();
solve();
return 0;
}
728x90
반응형
'알고리즘 > 시뮬레이션 & 구현' 카테고리의 다른 글
[백준/구현/C++] 20055번 컨베이어 벨트 위의 로봇 (0) | 2023.03.29 |
---|---|
[백준/구현/C++] 17141번 연구소2 (0) | 2023.03.13 |
[백준/구현/C++] 11659번 구간 합 구하기 4 (2) | 2023.02.20 |
[백준/구현/백트래킹/C++] 17406번 배열 돌리기 4 (삼성 코딩테스트) (0) | 2023.02.08 |
[백준/구현/C++] 17281번 야구* (0) | 2023.02.07 |