본문 바로가기

Algorithm/Implementation

(Python3) - 프로그래머스(PCCE 기출문제) : 7번 버스

반응형

https://school.programmers.co.kr/learn/courses/30/lessons/340201

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

빈칸 채우기 문제였습니다.

📕 풀이방법

📔 풀이과정

불필요한 함수는 사용하지 않습니다.1. func1은 양수값인 경우 해당 값을 반환하며 음수값은 0을 반환합니다.

 

2. 정거장마다 다음을 수행해 func4로 탄 승객을 num_passenger에 더하고 func3으로 빼서 최종 승객 수를 구합니다.

📔 정답 출력 | 반환

전체 좌석 수 seat에서 최종 승객 수를 뺀 값을 func1의 인자로 넘겨나온 값을 반환합니다.


📕 Code

📔 Python3

def func1(num):
  if 0 > num:
    return 0
  else:
    return num

def func3(station):
  num = 0
  for people in station:
    if people == "Off":
      num += 1
  return num

def func4(station):
  num = 0
  for people in station:
    if people == "On":
      num += 1
  return num

def solution(seat, passengers):
  num_passenger = 0
  for station in passengers:
    num_passenger += func4(station)  # 타는 승객 수를 더함
    num_passenger -= func3(station)  # 내리는 승객 수를 뺌
  answer = func1(seat - num_passenger)  # 남은 좌석 수 계산 및 음수일 경우 0으로 변환
  return answer

*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.