천상낙원

체스판 위의 개미 (Ant on a Chessboard)

ACM 퀴즈
어느 날 앨리스라는 개미가 M × M 체스판에 올라갔다. 앨리스는 체스판에 있는 모든 셀을 방문하려고 한다. 그래서 판 한 쪽 구석에서 시작해서 체스판을 한 꺼풀씩 훑어나가기로 했다. 앨리스는 (1, 1)자리부터 움직이기 시작했다. 처음에는 한 칸 위로 올라간 다음, 오른쪽으로 한 칸 이동하고, 다시 한 칸 아래로 내려왔다. 그리고 나서 한 칸 오른쪽으로 움직여서 두 칸 위로 올라가고, 두 칸 왼쪽으로 움직였다. 이런 식으로 매번 한 행, 그리고 한 열씩을 더 움직였다. 예를 들어 앨리스가 25단계를 움직인 경로를 표시해보면 다음과 같다. 여기에서 각 숫자는 앨리스가 각 셀을 방문한 순서를 나타낸다.

2524232221
1011121320
9871419
2361518
1451617

앨리스는 여덟 번째 단계에서는 (2, 3) 위치에 있었고, 20번째 단계에서는 (5, 4) 위치에 있었다. 단계수가 주어졌을 때, 체스판이 매우 커서 움직일 수 있는 위치에 제한이 없다고 할 때, 앨리스의 위치를 결정하는 프로그램을 만들어야 한다.

입력
입력 파일은 여러 줄로 구성되는데, 각 줄마다 단계 번호를 나타내는 정수 N (1≤N≤10^9)이 하나씩 입력된다. 0이 입력되면 입력이 종료된다.

출력
입력된 값에 대해 해당 단계에서의 앨리스의 위치 (x, y)를 나타내는 두 정수를 출력한다. x는 열 번호, y는 행 번호를 나타낸다. 두 정수 사이에는 스페이스가 한 개 들어간다.

입력 예
8
20
25
0

출력 예
2 3
5 4
1 5

'ACM 퀴즈' 카테고리의 다른 글

개와 땅다람쥐 (Dog and Gopher)  (0) 2006.04.14
큰 것이 더 똑똑하다? (Is Bigger Smarter?)  (0) 2006.03.26
주근깨 (Freckles)  (0) 2006.03.04