※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※
이번에 볼 문제는 백준 5612번 문제인 터널의 입구와 출구이다.
문제는 아래 링크를 확인하자.
https://www.acmicpc.net/problem/5612
5612번: 터널의 입구와 출구
첫째 줄에 조사한 시간 n이 주어진다. 둘째 줄에는 조사를 시작할 때, 터널 안에 들어있는 차량의 수 m이 주어진다. 다음 n개 줄의 i번째 줄(i = 1 ~ n)의 정보는 조사를 시작한지 (i-1)분이 경과한 시
www.acmicpc.net
매 분이 지날 때마다 터널 내에 존재하는 차의 수를 반복문을 이용해 갱신해나가자.
차의 수가 갱신될 때마다 그 값이 음수로 떨어지는지 또는 최댓값을 갱신했는지 등을 체크해 문제를 해결할 수 있다.
아래는 제출한 소스코드이다.
#include <iostream>
using namespace std;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
int ans;
int N, current; cin >> N >> current;
ans = current;
bool chk = 0;
for (int i = 0;i < N;i++) {
int x, y; cin >> x >> y;
current += x - y;
ans = max(current, ans);
if (current < 0) chk = 1;
}
if (chk) cout << 0;
else cout << ans;
}
728x90
'BOJ' 카테고리의 다른 글
[BOJ 27563 // C++] Moo Operations (0) | 2023.02.27 |
---|---|
[BOJ 27590 // C++] Sun and Moon (0) | 2023.02.27 |
[BOJ 5555 // C++] 반지 (0) | 2023.02.26 |
[BOJ 16480 // C++] 외심과 내심은 사랑입니다 (0) | 2023.02.25 |
[BOJ 4141 // C++] Numbersrebmun (0) | 2023.02.25 |