문제
가위 바위 보는 두 명이서 하는 게임이다. 보통 미리 정해놓은 수 만큼 게임을 하고, 많은 게임을 이긴 사람이 최종 승자가 된다.
가위 바위 보를 한 횟수와 매번 두 명이 무엇을 냈는지가 주어졌을 때, 최종 승자를 출력하는 프로그램을 작성하시오.
- 바위는 가위를 이긴다.
- 가위는 보를 이긴다.
- 보는 바위를 이긴다.
입력
첫째 줄에는 테스트 케이스의 개수 t(0 < t < 1000)가 주어진다. 각 테스트 케이스의 첫째 줄에는 가위 바위 보를 한 횟수 n(0 < n < 100)이 주어진다. 다음 n개의 줄에는 R, P, S가 공백으로 구분되어 주어진다. R, P, S는 순서대로 바위, 보, 가위이고 첫 번째 문자는 Player 1의 선택, 두 번째 문자는 Player 2의 선택이다.
출력
각 테스트 케이스에 대해서 승자를 출력한다. (Player 1 또는 Player 2) 만약, 비겼을 경우에는 TIE를 출력한다.
코드
n=int(input())
while n:
k=int(input())
s1,s2=0,0
for i in range(k):
p1,p2=input().split()
#player 1 win
if (p1=='P' and p2=='R') or (p1=='S' and p2=='P') or (p1=='R'and p2=='S'):
s1+=1
elif (p2=='P' and p1=='R') or (p2=='S' and p1=='P') or (p2=='R'and p1=='S'):
s2+=1
if s1>s2:
print('Player 1')
elif s2>s1:
print('Player 2')
else:
print('TIE')
n-=1
문제풀이
총 테스트 횟수를 N으로 받고 N이 0이 될때까지 while 문을 이용해 게임을 진행시킨다.
while 루프 안에 for 문을 이용해 각 테스트마다 가위바위보 게임 횟수를 받고 각 게임에서 승자에게 1점을 주었다.
for 루프가 끝나면 플레이어가 얻은 점수를 비교하여 그 테스트에서 승자를 출력하고 다음 테스트로 넘어간다.
'Koala - 7기 > 기초 알고리즘 스터디' 카테고리의 다른 글
[백준/python] 12756번 고급 여관 (0) | 2022.07.10 |
---|---|
[백준/python] 2869번 달팽이는 올라가고 싶다 (0) | 2022.07.10 |
[백준/Python]8393번 합 (0) | 2022.07.10 |
[백준/python] 2839번 설탕 배달 (0) | 2022.07.10 |
[백준/C++] 5704 팬그램 (0) | 2022.07.10 |