[[http://www.yes24.com/Product/Goods/89649360?pid=123487&cosemkid=go15851280284143301&gclid=Cj0KCQjwhqaVBhCxARIsAHK1tiNeGds7qqGpxd7tXxbr3P5KtfxFCB7SK9WrqqafGoEIQsE2OkEGBP0aAvcAEALw_wcB|출처]] 예제 0: 연극 극단의 청구서 다양한 연극을 외주로 받아서 공연하는 극단이 있다고 생각해보자. 공연 요청이 들어오면 연극의 장르와 관객 규모를 기초로 비용을 책정한다. 현대 이 극단은 두 가지 장르, 비극(tragedy)과 희극(comedy)만 공연한다. 그리고 공연료와 별개로 포인트(volume credit)를 지급해서 다음번 의뢰 시 공연료를 할인받을 수도 있다. 일정의 충성도 프로그램인 셈이다. 극단은 공연할 '연극 정보'를 plays.json 파일에 저장한다. 극단은 공연료 '청구서에 필요한 데이터'를 invoices.json 파일에 저장한다. 이 때 공연료 청구서를 출력하는 함수 statement(invoice, plays) -> str 를 Python 으로 작성하시오. ==== 참조 정보 ==== === 조건 === * 비극(tragedy)은 기본 $400 이며, 30명이 넘을 경우 추가인원 1명 당 $10 추가. (예: 31명일 때 $400 + $10) * 희극(comedy)은 기본 $300 이며, 1명 당 $3 추가. 20명이 넘을 경우 $100 + 추가인원 (21명째부터) 1명 당 $5 추가한다. (예: 21명일 때, $300 + ($3 * 21) + ($100 + ($5 * 1))) * 포인트는 30명을 초과한 인원 1명 당 1센트이며, 희극인 경우 5명 당 1센트 추가. * 비극도 희극도 아닌 연극의 경우 에러를 던진다 (raise). === plays.json === { "hamlet": {"name": "Hamlet", "type": "tragedy"}, "as-like": {"name": "As You Like It", "type": "comedy"}, "othello": {"name": "Othello", "type": "tragedy"} } === invoices.json === [ { "customer": "BigCo", "performances": [ { "playID": "hamlet", "audience": 55 }, { "playID": "as-like", "audience": 35 }, { "playID": "othello", "audience": 40 } ] } ] === 청구서 예시 === 청구 내역 (고객명: BigCo) Hamlet: $650.00 (55석) As You Like It: $580.00 (35석) Othello: $500.00 (40석) 총액: $1,730.00 적립 포인트: 47점