로고 2
면접 대비시간 제한1초메모리 제한128 MB
거북 그래픽 프로그램에서 숫자 하나가 물음표로 가려져 있을 때, 거북이 시작점으로 돌아오게 하는 값을 찾는다.
문제
Logo는 거북이를 중심으로 만들어진 프로그래밍 언어이다. 거북이는 종이 위를 움직이며, 움직일 때 펜으로 선을 그린다. 우리는 거북이가 그림을 그린 뒤 출발한 지점으로 다시 돌아오게 하고 싶다.
거북이는 네 가지 명령을 이해한다.
fd d: 거북이를 앞으로 만큼 움직인다.bk d: 거북이를 뒤로 만큼 움직인다.lt a: 거북이를 왼쪽(반시계 방향)으로 도 회전시킨다.rt a: 거북이를 오른쪽(시계 방향)으로 도 회전시킨다.
예를 들어 다음 프로그램은
fd 100 lt 120 fd 100 lt 120 fd 100
한 변의 길이가 100인 정삼각형을 그리며, 실행이 끝나면 거북이는 출발한 자리로 돌아온다. 모든 거리와 각도는 음이 아닌 정수이다.
그런데 프로그램을 급히 적는 바람에 숫자 하나를 알아볼 수 없게 되었다. 프로그램이 끝날 때 거북이가 출발 지점으로 돌아온다고 할 때, 사라진 숫자를 구하라.
입력
첫째 줄에 테스트 케이스의 수가 주어진다. 각 테스트 케이스는 명령의 개수가 적힌 줄로 시작하고, 그 뒤에 명령이 한 줄에 하나씩 주어진다. 각 테스트 케이스의 명령은 개를 넘지 않는다. 각 명령의 인수는 정수 또는 물음표(?)이며, 각 테스트 케이스에는 물음표가 정확히 하나 있다.
출력
각 테스트 케이스마다, 물음표를 대신 넣었을 때 거북이가 출발 지점으로 돌아오게 하는 정수 을 한 줄에 출력한다. 물음표가 lt 또는 rt 명령의 인수이면, 답은 도 이상 도 이하여야 한다. 답은 항상 정수이며, 모든 테스트 케이스에는 정답이 정확히 하나 존재한다.