[COS PRO 2급-Python] 획득 점수 구하기. 도박은 안돼요.

Sunhee·2023년 6월 30일

COS PRO - Python 2급

목록 보기
33/44

[COS PRO 2급-Python] 획득 점수 구하기. 도박은 안돼요.

문제 설명

A와 B가 카드 게임을 할 때, 누가 더 많은 점수를 획득했는지, 또 획득한 점수는 몇 점인지 알아보려고 합니다. 게임 규칙은 다음과 같습니다.

  • 알파벳 a,b,c,d,e가 적힌 카드뭉치가 있습니다.
  • A와 B가 서로 번갈아 가면서 n장씩 카드를 뽑습니다.
  • 소유한 카드 점수를 합산합니다. 알파벳 카드 한 장당 a = 1점, b = 2점, c = 3점, d = 4점, e = 5점으로 점수를 계산합니다.
  • 점수가 높은 사람이 승리합니다.

게임에서 이긴 사람과 획득 점수를 구하기 위해 다음과 같이 프로그램 구조를 작성했습니다.

  1. A와 B가 번갈아가며 가져간 카드를 각각 배열에 넣습니다.
  2. A와 B가 각각 획득한 점수를 구합니다.
  3. 획득한 점수가 큰 사람과 획득한 점수를 순서대로 배열에 담아 return 합니다.

뽑아야 하는 카드 개수 n, 카드를 나타내는 문자 배열 bundle, bundle의 길이 bundle_len이 매개변수로 주어질 때, 이긴 사람과 점수를 return 하도록 solution 함수를 작성하려 합니다. 위 구조를 참고하여 코드가 올바르게 동작할 수 있도록 빈칸을 주어진 func_a, func_b, func_c 함수와 매개변수를 알맞게 채워주세요.


### 매개변수 설명 뽑아야 하는 카드 개수 n, 카드를 나타내는 문자 배열 bundle, bundle의 길이 bundle_len이 solution 함수의 매개변수로 주어집니다.
  • n은 1 이상 25 이하인 자연수입니다.
  • bundle의 모든 원소는 알파벳 소문자입니다.
  • bundle_len은 2이상 2*n이하입니다.



return 값 설명

이긴 사람과 획득한 점수를 return합니다.
A가 이겼을 경우에는 1, B가 이겼을 경우에는 2, 무승부일 경우에는 0을 return 해주세요.

예시


내가 쓴 코드!

def solution(n, bundle):
	a_cards = func_a(bundle, 0)[:n]
	b_score = func_c(b_cards)
	b_cards = func_a(bundle, 1)[:n]
	a_score = func_c(a_cards)
	return func_b(a_score, b_score)

0개의 댓글