반응형
문제
시험이 끝난 준서는 친구들과 술을 마시고 있다.
두~~부 두부 두부 으쌰 으쌰 으쌰 두~~부 두부 두부 으쌰 으쌰 으쌰
어디선가 어깨를 주체할 수 없는 신명 나는 노랫소리가 들려오기 시작한다. 친구들은 홀린 듯 어깨춤을 추며 노래를 따라부르기 시작한다.
준서를 포함하여 N 명의 사람이 함께 노래를 부르며 게임을 진행하고 있다. 이름처럼 여러 글자를 말하기 힘들어진 사람들은 1 ~N 번으로 서로를 구분한다. 화목한 친구들은 반시계방향으로 번호가 증가하도록 둥글게 앉아있다.
이때 노래를 부르던 M 번 사람이 두부 K 모를 외쳤다.
또또 나만 모르는 술 게임을 하는 걸 본 준서는 옆자리 준우 형에게 몰래 게임의 룰을 물어보았다.
- 자신의 차례인 사람은 하나의 정수 K 를 외친다.
- 번호를 부른 사람이 기준인 3 모가 된다.
- 반시계방향으로 옆 사람의 모 수는 1 이 증가하고, 시계방향으로 1 이 감소한다.
- 모 수가 K 인 사람이 다음 차례가 되어 게임을 반복한다.
- 만약 자신의 차례가 아닌데 K 를 외치거나, 자신의 차례에 K 를 부르지 않으면 술을 마셔야 한다.
설명을 들었지만 술에 취한 준서는 너무나도 어지러워 다음 차례가 누구인지 도저히 모르겠다. 준서가 마시면서 배우는 술 게임에 당하지 않도록 다음 차례인 사람의 번호를 알려주자!
문제풀이
import math
N,M,K = map(int,input().split())
Y = K-3
X = M+Y
if(X%N>0):
print(X%N)
elif(X%N==0):
print(N)
- 이 문제의 특이점은 음수의 나눗셈을 진행하여 나머지를 구하는 것이다.
EX) -2 % 5 =3 -> -2 / 5 -> 몫 : -1, 나머지:3
- 즉 음수 나눗셈의 나머지는 양수이므로, if문을 (X%N>0)으로 음수, 양수 모두 가능하다.
'프로그래밍 > 백준' 카테고리의 다른 글
[알고리즘] 백준 25495 파이썬 - 에어팟 (0) | 2022.10.09 |
---|---|
[알고리즘] 백준 14568 파이썬 -2017 연세대학교 프로그래밍 경시대회 (0) | 2022.10.09 |
[백준알고리즘] 백준 25024 파이썬 - 시간과 날짜 (0) | 2022.10.08 |
[백준알고리즘] 백준 14913 파이썬 - 등차수열에서 항 번호 찾기 (1) | 2022.10.08 |
[백준알고리즘] 백준 12840 파이썬 - 창용이의 시계 (0) | 2022.10.08 |