[BAEKJOON - C++] 2455번 : 지능형 기차

정다은·2023년 7월 3일
0

BAEKJOON

목록 보기
47/54
C++ 배우기 (51~100) 이 문제집을 참고하여 문제를 풀었습니다.

2023년 1월 ~ 2월에 프로그래밍을 공부하기 위해 풀었던 문제들이다.

🍑문제

최근에 개발된 지능형 기차가 1번역(출발역)부터 4번역(종착역)까지 4개의 정차역이 있는 노선에서 운행되고 있다. 이 기차에는 타거나 내리는 사람 수를 자동으로 인식할 수 있는 장치가 있다. 이 장치를 이용하여 출발역에서 종착역까지 가는 도중 기차 안에 사람이 가장 많을 때의 사람 수를 계산하려고 한다. 단, 이 기차를 이용하는 사람들은 질서 의식이 투철하여, 역에서 기차에 탈 때, 내릴 사람이 모두 내린 후에 기차에 탄다고 가정한다.

자세한 예시는 문제링크 참고

입력
각 역에서 내린 사람 수와 탄 사람 수가 빈칸을 사이에 두고 첫째 줄부터 넷째 줄까지 역 순서대로 한 줄에 하나씩 주어진다.

출력
첫째 줄에 최대 사람 수를 출력한다.

🍑대략적인 틀

  • 4번을 반복문을 돌리며 내린 사람 수와 탄 사람 수를 입력받는다.
  • 사람수를 계산해서 가장 많이 타있던 역을 찾아내서 그떄의 사람 수를 출력

🍑 작성한 코드

// 지능형 기차
/*
이 기차는 다음 조건을 만족하면서 운행된다고 가정한다.

1. 기차는 역 번호 순서대로 운행한다.
2. 출발역에서 내린 사람 수와 종착역에서 탄 사람 수는 0이다.
3. 각 역에서 현재 기차에 있는 사람보다 더 많은 사람이 내리는 경우는 없다.
4. 기차의 정원은 최대 10,000명이고, 정원을 초과하여 타는 경우는 없다.
4개의 역에 대해 기차에서 내린 사람 수와 탄 사람 수가 주어졌을 때, 기차에 사람이 가장 많을 때의 사람 수를 계산하는 프로그램을 작성하시오.
*/

#include <iostream>
using namespace std;

int main() {
	int people = 0, ride, unload, max = -1;

	for (int i = 0; i < 4; i++) {
		cin >> unload >> ride;
		people += ride;
		people -= unload;
		if (max < people)
			max = people;
	}
	cout << max;
}
profile
보안 공부하는 대학교 3학년 / 시리즈에서 더욱 편하게 글을 찾아보실 수 있습니다:)

0개의 댓글