Tüm olasılıkları geçecek en kısa kod kazanır
Açık olan bir ışık ızgarası ile başlayan birçok ızgara tabanlı oyun yapılmıştır. Işıklardan herhangi birine basmak, ışığın ve yanındaki dört ışığın yanmasına neden olur. Bir ışık açıldığında, açık veya kapalı olmasına bağlı olarak kapatılır veya açılır. Amaç, tüm ışıkların sonunda kapanmasına neden olacak şekilde ışıkları vurmaktır.
"X", açık ışıkları temsil eder. "O" kapalı ışıkları gösterir. "P", basılan kareyi temsil eder.
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
Giriş, bağımsız değişken olarak veya standart girdi olarak iletilen bir dosyadan doğrudan alınabilir. Giriş ilk satırı içerecektir X (1 <= x <= 20), yani ışık ızgara boyutu, x ile x . İkinci satırda başlangıçta yanan ışık sayısı y (0 <= y <= ( x * 3) 2 ) olacaktır. Sonraki y satırında, ızgaradaki "sıra sütunu" biçimindeki yanan ışıkların koordinatları bulunur. Zaten açık olan ışıklar (daha önce değiştirilmiş olan) tekrar kapatılmalıdır. Bir sonraki satır, basılan ışık sayısı olan z içerecektir . Son z çizgiler, basılan ışıkların koordinatlarını, basıldıkları sırayla, "satır sütunu" biçiminde içerir.
Hiçbir girdi yanlış olmayacak. Tüm sayılar ızgaranın belirtilen sınırları içinde olacaktır.
Tüm ışıklar açıldıktan sonra çıkış son ızgara olacaktır. Bir n , n ızgara olmalıdır. Açık olan her alan için büyük harf "X" kullanılmalıdır. Işığı kapalı olan her alan için büyük harf "O" kullanılmalıdır.
Şebekeden çıkan etkilenen ışıklar göz ardı edilmelidir. Bir ızgaranın kenarındaki bir ışığın değiştirilmesi sadece ızgaranın üzerindeki ışıkları etkilemelidir.
Test Durumları
Giriş
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
Çıktı
OXOO
XOXO
XOXO
OXOO
Giriş
1
3
1 1
1 1
1 1
2
1 1
1 1
Çıktı
X