사용자 도구

사이트 도구


ps:problems:boj:22151

Игра

ps
링크acmicpc.net/…
출처BOJ
문제 번호22151
문제명Игра
레벨브론즈 1
시간복잡도O(t)
인풋사이즈t<=100
사용한 언어Python 3.11
제출기록31256KB / 40ms
최고기록36ms
해결날짜2023/06/27

풀이

  • 질문게시판에 문제의 번역 이 올라와있다.
  • 만약 목적지와 가까워지는 방향으로만 이동이 가능하다면, 배스킨라빈스 게임과 동일해지고 쉽게 누가 승리할지를 알수 있다.
  • 하지만, 여기에서는 목적지와 멀어지는 방향으로도 이동이 가능하다. 아무 플레이어나 자신이 질것 같으면 목적지와 반대쪽으로 이동하는 것을 반복하면 상대는 승리할 수가 없고 비기게 된다
  • 결국 선공이 첫턴에 승리하는것에 실패하면, 그 뒤에 둘중에 패배할것 같은 사람은 비기기 전략을 사용해서 비기게 될것이므로, 가능한 결과는 선공의 1턴 승리 또는 비기기, 이렇게 두개밖에 없다.

코드

"""Solution code for "BOJ 22151. Игра".

- Problem link: https://www.acmicpc.net/problem/22151
- Solution link: http://www.teferi.net/ps/problems/boj/22151
"""


def main():
    n = int(input())
    for _ in range(n):
        m, xs, ys, xf, yf = [int(x) for x in input().split()]
        if abs(xs - xf) + abs(ys - yf) <= m:
            print('First 1')
        else:
            print('Infinity')


if __name__ == '__main__':
    main()

토론

댓글을 입력하세요:
I S​ F M Y
 
ps/problems/boj/22151.txt · 마지막으로 수정됨: 2023/06/27 15:17 저자 teferi