T=int(input())
L=[]
K=[]
P=''
for i in range (T) :
a,b=map(int,input().split())
K.append(a)
K.append(b)
K.sort(reverse=True)
if a==b :
if a==1 :
L.append("Habb Yakk")
elif a==2:
L.append("Dobara")
elif a==3:
L.append("Dousa")
elif a==4:
L.append("Dorgy")
elif a==5:
L.append("Dabash")
elif a==6:
L.append("Dosh")
elif (a==5 and b==6) or (a==6 and b==5) :
L.append("Sheesh Beesh")
else :
for j in K :
if j==6 :
P+="Sheesh"
elif j==5 :
P+="Bang"
elif j==4 :
P+= "Ghar"
elif j==3 :
P+="Seh"
elif j==2:
P+="Doh"
elif j==1 :
P+="Yakk"
P+=" "
L.append(P)
K=[]
P=''
for u in range (T) :
print("Case %d: %s" %(u+1,L[u]))
딕셔너리를 공부하기 전 지식으로 풀었을 때 나온 결과이다. 딱히 틀린 것이 없지만 코드가 매우 길게 나온다.
D1={1: 'Yakk' , 2: 'Doh', 3: 'Seh', 4: 'Ghar', 5: 'Bang', 6: 'Sheesh'}
D2={1: "Habb Yakk", 2: "Dobara", 3: "Dousa", 4: "Dorgy", 5: "Dabash", 6: "Dosh"}
L=[]
T=int(input())
for i in range (T):
a,b=map(int,input().split())
if (a==6 and b==5) or (a==5 and b==6) :
L.append(D1[6]+" "+"Beesh")
elif a>b :
L.append(D1[a]+" "+D1[b])
elif a<b :
L.append(D1[b]+" "+D1[a])
elif a==b :
L.append(D2[a])
for j in range (T) :
print("Case %d: %s" %(j+1,L[j]))
딕셔너리를 사용하니 코드를 한번에 보기 쉽고 더 효율적으로 작성할 수 있다. 딕셔너리를 알고 푸니 훨씬 더 쉬운 문제였다.
'Koala - 12기 > 기초 알고리즘 스터디' 카테고리의 다른 글
[백준/Python3] 14724번: 관리자는 누구? (0) | 2023.09.24 |
---|---|
[백준/Python] 17219 비밀번호 찾기 (0) | 2023.09.24 |
[백준/python] 10867번: 중복 빼고 정렬하기 (0) | 2023.09.20 |
[백준/Python] 5704번: 팬그램 (0) | 2023.09.19 |
[백준 Python3] 10871번 : X보다 작은 수 (0) | 2023.09.17 |