728x90
간단한 구현 문제입니다.
터널에 가장 차들이 많았을 때 수를 출력해야합니다.
차가 -1 이하로 있으면 0을 출력합니다.
N의 시간이 주어지고
M의 초기 터널안의 차의 수가 주어집니다.
다음 줄부터 x개의 차가 들어오고
y개의 차가 나갑니다.
x-y의 값을 현재 터널안에 있는 차의 수에 더해주어서
가장 클 때를 출력하면 됩니다.
#include <iostream>
#include <algorithm>
#include <cstring>
using namespace std;
int main(int argc, char *argv[])
{
int n, m;
int x, y, z;
int result = 0;
int arr[10010];
memset(arr, 0, sizeof(arr));
cin >> n >> m;
z = m;
for(int i = 1; i <= n; ++i){
cin >> x;
cin >> y;
z += x - y;
if(z < 0){
cout << 0 << endl;
return 0;
}
result = max(result, z);
}
cout << result << endl;
return 0;
}
'알고리즘' 카테고리의 다른 글
[C++] 백준 2804번 크로스워드 만들기 (0) | 2019.11.04 |
---|---|
[C++] 백준 9226번 도깨비말 (0) | 2019.11.04 |
[C++] 백준 6086번 최대 유량 (0) | 2019.10.30 |
[C++] 백준 1298번 노트북의 주인을 찾아서 (0) | 2019.10.29 |
[C++] 백준 16440번 제이크와 케이크 (0) | 2019.10.28 |