본문 바로가기
알고리즘/CodeUp PS

[CodeUp][Python] 1207번 : 윷놀이

by 빛밤하늘 2021. 8. 28.
반응형

밑의 링크는 CodeUp에서의 문제 링크입니다.

문제는 링크를 통해서 직접 봐주시길 바랍니다.

 

윷놀이

윷의 상태를 보고 도, 개, 걸, 윷, 모를 판단하여 출력한다.

codeup.kr

 

 

 

주의해야 할 점

1. map, split, list를 사용하는 입력 방식

실수나 정수인 여러 값들이 입력값일 때,

split 메서드를 사용해 공백이나 어떤 문자를 기준으로 입력값을 여러 값들로 분리하고,

map 내장 함수로 각각의 값들을 int형이나 float형으로 정수, 실수 자료형으로 변환하는 한 뒤,

list로 묶어 리스트 변수에 넣어주는 기법은 매우 많이 쓰입니다.

코드 이해부터 하고 나면 다른 문제에서도 외운 듯이 사용해봅시다.

num_list = list(map(int, sys.stdin.readline().split()))

 

예제 설명

1. 첫 번째 예제

- 입력

0 0 1 0

 

- 출력

 

- 설명

입력한 네 수는 0, 0, 1, 0입니다.

0은 뒤집어지지 않은 상태, 1은 뒤집어진 상태의 윷입니다.

뒤집어진 윷이 한 개이므로, 도입니다.

따라서 문자 '도'를 출력합니다.

 

생각한 풀이 과정

네 수를 입력하면 모두 한 리스트에 넣어줍니다.

뒤집어진 윷의 개수에 따라 결과가 정해지므로 리스트에서 뒤집어진 윷의 상태인 1의 개수를 세어줍니다.

뒤집어진 윷의 상태인 1의 개수가 1개라면 도이므로, 문자 '도'를 출력합니다.

뒤집어진 윷의 상태인 1의 개수가 2개라면 개이므로, 문자 '개'를 출력합니다.

뒤집어진 윷의 상태인 1의 개수가 3개라면 걸이므로, 문자 '걸'을 출력합니다.

뒤집어진 윷의 상태인 1의 개수가 4개라면 윷이므로, 문자 '윷'을 출력합니다.

그 외의 경우, 즉, 뒤집어진 윷의 상태인 1의 개수가 1개라면 모이므로, 문자 '모'를 출력합니다.

 

 

제출한 파이썬 코드

# readline을 사용하기 위해 import합니다.
from sys import stdin


# 윷 4개의 상태를 공백으로 구분해 입력합니다.
# 각각 int형으로 변환하고, 리스트 변수에 넣어줍니다. 
yuts = list(map(int, stdin.readline().split()))
# 리스트 yuts에서 뒤집어진 상태의 윷인 1의 개수를 저장하는 변수를 선언합니다.
turned_yuts_cnt = yuts.count(1)

# 뒤집어진 윷의 개수가 1개라면, 즉, 1의 개수가 1개라면
if turned_yuts_cnt == 1:
    # 문자 '도'를 출력합니다.
    print('도')
# 뒤집어진 윷의 개수가 2개라면, 즉, 1의 개수가 2개라면
elif turned_yuts_cnt == 2:
    # 문자 '개'를 출력합니다.
    print('개')
# 뒤집어진 윷의 개수가 3개라면, 즉, 1의 개수가 3개라면
elif turned_yuts_cnt == 3:
    # 문자 '걸'을 출력합니다.
    print('걸')
# 뒤집어진 윷의 개수가 4개라면, 즉, 1의 개수가 4개라면
elif turned_yuts_cnt == 4:
    # 문자 '윷'을 출력합니다.
    print('윷')
# 그 외의 경우인 뒤집어진 윷이 없다면, 즉, 1의 개수가 0개라면
else:
    # 문자 '모'를 출력합니다.
    print('모')

 

제출 결과

CodeUp 1207번 : 윷놀이에서 코드 제출 결과
CodeUp 1207번 : 윷놀이에서 코드 제출 결과

 

 

 

※ 궁금한 부분, 이상한 점 및 오타는 댓글에 부탁드립니다.

※ 더 효율적이고 빠른 정답을 환영합니다.

※ 공감 버튼과 구독 버튼도 잊지 말고 꾹 눌러주시면 감사하겠습니다~👍👍

반응형

댓글