10x10 격자에 켜진 전구와 꺼진 전구가 주어질 때, 모든 전구를 끄는 최소 스위치 누름 횟수를 구한다.
전구 100개가 10×1010 \times 1010×10 격자로 놓여 있다. 어떤 전구의 스위치를 누르면 그 전구와 위, 아래, 왼쪽, 오른쪽으로 맞닿은 전구의 상태가 함께 바뀐다. 켜진 전구는 꺼지고, 꺼진 전구는 켜진다. 격자 밖은 아무 영향도 받지 않는다.
전구 100개의 처음 상태가 주어질 때, 모든 전구를 끄려면 스위치를 최소 몇 번 눌러야 하는지 구하라.
10줄에 걸쳐 각 줄에 10글자가 주어진다. #은 꺼진 전구, O(대문자 알파벳 오)는 켜진 전구를 뜻한다. 입력에는 #과 O 말고 다른 문자가 나오지 않는다.
#
O
모든 전구를 끄기 위해 눌러야 하는 스위치의 최소 개수를 한 줄에 출력한다. 모든 전구를 끌 수 없으면 -1을 출력한다.
-1