[COS PRO 2급-Python] 여행객의 총 교통비 구하기

Sunhee·2023년 6월 28일

COS PRO - Python 2급

목록 보기
26/44

[COS PRO 2급-Python] 여행객의 총 교통비 구하기

문제 설명

여행객들의 총 교통비를 계산하려고 합니다. 교통편은 "Bus","Ship",Airplane" 총 3가지입니다. 나이가 20살 이상이면 어른 요금을, 그렇지 않으면 어린이 요금을 받습니다.
각 교통편별 가격은 다음과 같습니다.

여행객들이 10명 이상인 경우 연령에 따라 할인을 받습니다.

여행객들의 나이를 담고 있는 배열 member_age와 member_age의 길이 member_age_len, 교통편인 transportation이 매개변수로 주어질 때, 총 교통비를 return 하도록 solution 함수를 작성하려고 합니다. 빈칸을 채워 전체 코드를 완성해주세요.



매개변수 설명

여행객들의 나이를 담고 있는 배열 member_age와 member_age의 길이 member_age_len, 교통편인 transportation이 solution 함수의 매개변수로 주어집니다.

  • member_age_len은 1 이상 1,000 이하의 자연수입니다.
  • member_age의 원소는 1 이상 100 이하입니다.
  • transportation은 "Bus" 또는 "Ship" 또는 "Airplance"입니다.



return 값 설명

교통비 총액을 return 해주세요.


예시



알고리즘 구상

▶ 어른은 10%할인 어린이는 20%할인을 하니 각각 0.9, 0.8을 곱하고 if문은 어른이면 adult_expense, 어린이면 child_expense를 더해야 하기 때문에 age>=20 조건을 사용한다.



내가 쓴 코드!

# -*- coding: utf-8 -*-
# UTF-8 encoding when using korean

def solution(member_age, transportation):
	if transportation == 'Bus':
		adult_expense = 40000
		child_expense = 15000
	elif transportation == 'Ship':
		adult_expense = 30000
		child_expense = 13000
	elif transportation == 'Airplane':
		adult_expense = 70000
		child_expense = 45000

	if len(member_age) >= 10:
		adult_expense = adult_expense*0.9
		child_expense = child_expense*0.8

	total_expenses = 0
	for age in member_age:
		if age>=20:
			total_expenses += adult_expense
		else:
			total_expenses += child_expense

	return total_expenses



느낀점

문제를 생활에서 가져온 느낌이라서 좋았다.


0개의 댓글