[Java] 340201 PCCE 7번 / 버스
1. 문제
프로그래머스 [Java] [PCCE 기출문제] 7번 / 버스
2. 정답 코드
메서드별 역할
1. solution(int seat, String[][] passengers)
- 입력
- seat : 전체 좌석 수
- passengers : 각 정거장에서의 승객 상태를 나타내는 2차원 배열
- "On" - 탑승
- "Off" - 하차
- "-" - 변화 없음
- 동작
- num_passenger 이라는 변수를 만들어서 현재까지의 탑승자 수를 누적 계산하려고 함
- 각 정거장을 돌면서 func4(탑승자 수 카운트)를 더하고, func3(하차자 수 카운트)를 뺌
- 최종적으로 func1(seat - num_passenger)로 총 좌석 수에서 현재 앉아 있는 인원 수를 뺀 나머지 좌석 수 계산
- 음수면 0 보정
2. func1(int num)
- 기능 : 숫자가 0보다 작으면 0을 반환, 아니면 그대로 반환한다.
- 남은 좌석 수가 음수면 0으로 보정하는 목적이다.
3. func2(int num)
- 기능 : 숫자가 0보다 크면 0을 반환, 아니면 그대로 반환
- 이건 문제에서 쓰이지 않는 메서드이다.
4. func3(String[] station)
- 기능 : 해당 정거장에서 "Off" 가 몇 번 나왔는지 카운트해서 반환
- 이 정거장에서 하차한 사람 처리하는 메서드
5. func4(String[] station)
- 기능 : 해당 정거장에서 "On"이 몇 번 나왔는지 카운트해서 반환
- 이 정거장에서 탑승한 사람 처리용 메서드