boj.kr/6f93382f47fb49f2abf93bc0345ec1b6
공유 소스 보기
www.acmicpc.net
문제
이 기차는 다음 조건을 만족하면서 운행된다고 가정한다.
- 기차는 역 번호 순서대로 운행한다.
- 출발역에서 내린 사람 수와 종착역에서 탄 사람 수는 0이다.
- 각 역에서 현재 기차에 있는 사람보다 더 많은 사람이 내리는 경우는 없다.
- 기차의 정원은 최대 10,000명이고, 정원을 초과하여 타는 경우는 없다.
4개의 역에 대해 기차에서 내린 사람 수와 탄 사람 수가 주어졌을 때, 기차에 사람이 가장 많을 때의 사람 수를 계산하는 프로그램을 작성하시오.
입력
각 역에서 내린 사람 수와 탄 사람 수가 빈칸을 사이에 두고 첫째 줄부터 넷째 줄까지 역 순서대로 한 줄에 하나씩 주어진다.
출력
첫째 줄에 최대 사람 수를 출력한다.
//기차 출발역 1번 ~ 종착역 4번 = 총 4개의 정착역
//단, 내릴 사람이 모두 내린 후에 기차에 탄다.
//고객 a / 최대 max
//1번 내린사람 0명 / 탄 사람 32명 = 32
//2번 내린사람 3명 / 탄 사람 13명 = 32-3+13 = 42
//3번 내린사람 28명 / 탄 사람 25명 = 42-28+25 = 39
//4번 내린사람 39명 / 탄 사람 0명 = 39
//기차 안에 사람이 가장 많을 때의 사람 수는?
간단하게 for문을 써서 구하였다.
고객을 a라 지정하고, 내린사람과 탄사람의 입력을 받아야하는데,
a -= sc.nextInt();
a += sc.nextInt(); 을 이용하여 나타내었고,
최대값을 구하기 위해
중간에 if문을 넣어주어 a가 max보다 크다면 max의 값은 a가 되도록 하였다.
'Coding Test > 백준' 카테고리의 다른 글
[21.01.21] 3_ 01110. 더하기 사이클 (0) | 2021.02.05 |
---|---|
[21.01.21] 2_ 02588. 곱셈 (0) | 2021.02.05 |
[21.01.20] 별찍기12 ~ 21 (0) | 2021.02.05 |
[21.01.18] 별찍기1 ~ 9 (0) | 2021.01.18 |
[21.01.18] 사칙연산_3 (0) | 2021.01.18 |