문제
입력
입력은 아래와 같이 주어진다.
출력
구멍을 막는 데에 활용할 수 있는 최대 부피를 출력한다.
Solved.ac 레벨
실버 I
풀이
#include <bits/stdc++.h>
using namespace std;
int main(){
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int n, m;
int s = 0, e = 0, sum = 0, result = 0;
cin >> n >> m;
int arr[n + 1];
for(int i = 0; i < n; i++) {
cin >> arr[i];
}
while(e <= n + 1){
if(sum > m) {
sum -= arr[s++];
} else if(sum <= m) {
result = max(result, sum);
sum += arr[e++];
}
}
cout << result << "\n";
return 0;
}
'Study (etc) > Problem Solving' 카테고리의 다른 글
[BOJ / C++] 1124번 : 언더프라임 (0) | 2023.05.12 |
---|---|
[BOJ / C++] 16923번 : 다음 다양한 단어 (0) | 2023.05.08 |
[BOJ / C++] 11728번 : 배열 합치기 (0) | 2023.05.07 |
[BOJ / C++] 17609번 : 회문 (0) | 2023.05.07 |
[BOJ / C++] 2018번 : 수들의 합 5 (0) | 2023.05.04 |