모든 가능성을 전달하는 가장 짧은 코드가 승리
스위치가 켜진 그리드로 시작하는 많은 그리드 기반 게임이 만들어졌습니다. 조명 중 하나를 누르면 해당 조명과 그에 인접한 4 개의 조명이 토글됩니다. 표시등이 전환되면 초기에 켜지거나 꺼 졌는지에 따라 꺼 지거나 켜집니다. 목표는 순서대로 조명을 쳐서 모든 조명이 끝날 때 꺼지는 것입니다.
"X"는 켜져있는 표시등을 나타냅니다. "O"는 꺼진 표시등을 나타냅니다. "P"는 누른 사각형을 나타냅니다.
XOO XOO XOX XOX XXX
XOX XOP -> XXO -> OPO -> XOX
OOX OOX POO XXO XOO
Intial Grid Press 1 Press 2 Press 3 Ending Grid
입력은 인수 또는 표준 입력으로 전달 된 파일에서 직접 가져올 수 있습니다. 입력의 첫 번째 줄에 포함 X (1 <= X <= 20), 즉 조명 그리드의 크기 X를 하여 X . 두 번째 줄에는 y (0 <= y <= ( x * 3) 2 )가 포함되며 처음에는 불이 켜집니다. 다음 y 줄에는 "행 열"형식으로 그리드의 점등 된 조명 좌표가 포함됩니다. 이미 켜져있는 (이전에 토글 된) 라이트는 다시 토글되어야합니다. 다음 줄에는 누른 조명 수인 z 가 포함됩니다 . 마지막 z 라인은 "행 열"형식으로 눌러 진 순서대로 누른 조명의 좌표를 포함합니다.
입력이 올바르지 않습니다. 모든 숫자는 그리드의 주어진 경계 안에 있습니다.
모든 라이트가 토글 된 후 출력이 최종 그리드가됩니다. n x n 격자 여야합니다 . 표시등이 켜져있는 각 영역에는 대문자 "X"를 사용해야합니다. 표시등이 꺼져있는 각 영역에는 대문자 "O"를 사용해야합니다.
그리드를 벗어난 영향을받는 조명은 무시해야합니다. 그리드 가장자리에서 조명을 전환하면 그리드 자체에있는 조명에만 영향을 미칩니다.
테스트 사례
입력
4
5
2 3
2 4
3 1
3 4
4 3
7
3 3
4 4
3 4
4 2
4 1
2 2
3 2
산출
OXOO
XOXO
XOXO
OXOO
입력
1
3
1 1
1 1
1 1
2
1 1
1 1
산출
X