🔅코딩테스트 공부🔅/❗백준
[백준] 2490번 윷놀이(with python)
윤무무
2023. 1. 11. 01:15
https://www.acmicpc.net/problem/2490
2490번: 윷놀이
우리나라 고유의 윷놀이는 네 개의 윷짝을 던져서 배(0)와 등(1)이 나오는 숫자를 세어 도, 개, 걸, 윷, 모를 결정한다. 네 개 윷짝을 던져서 나온 각 윷짝의 배 혹은 등 정보가 주어질 때 도(배 한
www.acmicpc.net
1. 내가 작성한 코드
for i in range (4):
arr[i] = list(map(int, input().split()))
for i in range (3):
x,y = 0,0
for j in range (4):
if arr[i][j] == 0 :
x = x + 1
else :
y = y + 1
if x == 1 and y == 3 : print('A')
elif x == 2 and y == 2 : print('B')
elif x == 3 and y == 1 : print('C')
elif x == 4 and y == 0 : print('D')
else : print('E')
'입력 -> 출력 -> 입력 -> 출력'과 같이 입력과 출력이 교차되는 형태도 맞게 채점되는 지 알지 못해서,,
입력 입력 입력 -> 출력 출력 출력 과 같은 형식으로 만들기 위해 노력했다.
arr 리스트가 제대로 정의되지 않아 런타임 오류가 발생했고 ㅠㅠ 한참을 고민했지만 어떻게 해결해야하는지 알지 못해서 구글링..
2. 모범답안
for i in range(3):
a = list(map(int, input().split()))
if a.count(0) == 1:
print("A")
elif a.count(0) == 2:
print("B")
elif a.count(0) == 3:
print("C")
elif a.count(0) == 4:
print("D")
else:
print("E")
알게 된 점
- 어차피 a 리스트는 반복문을 거치며 재정의 되기 때문에 굳~이 리스트를 3개 만들 필요가 없다.
- (1,3) (2,2)와 같이 튜플의 형태로 조건식을 만들 필요 없이, 0이나 1의 수로 세우면 된다.
- 입력과 출력은 교차되어도 상관없다 (생각해보면 당연함)
- count() 함수를 이용해 list에 있는 원소의 수를 셀 수 있다.