Şəhərlər
Gənc proqramçı öz oyununu yaratmağa qərar verdi. Oyun n × n ölçüsündə hüceyrələrdən ibarət sahədə baş verir, bəzi hüceyrələrdə şəhərlər yerləşir (hər bir şəhər bir hüceyrəni tutur; hər bir hüceyrədə bir şəhərdən çox yerləşə bilməz). Ümumilikdə cüt sayda şəhər olmalıdır.
Əvvəlcə oyun sahəsinin hər bir hüceyrəsi haqqında məlumdur ki, orada şəhər yerləşib, ya yox. Oyuna başlamaq üçün oyun sahəsini iki dövlətə elə bölmək lazımdır ki, hər bir dövlətdə bərabər sayda şəhər-hüceyrə olsun.
Dövlətlər arasındakı sərhəd hüceyrələrin sərhədləri boyunca elə keçməlidir ki, hər bir dövlətin istənilən hüceyrəsindən həmin dövlətin istənilən digər hüceyrəsinə yol olsun (hüceyrədən qonşu hüceyrəyə keçmək olar, əgər onların ortaq tərəfi varsa). Oyun sahəsinin hər bir hüceyrəsi yalnız iki dövlətdən birinə aid olmalıdır, bu zaman dövlətlərin eyni sayda hüceyrədən ibarət olması məcburi deyil.
Verilmiş oyun sahəsinin hüceyrələrini iki dövlət arasında böləcək proqram yazmaq lazımdır.
Giriş məlumatları
Birinci sətir oyun sahəsinin ölçüsünü n (1 ≤ n ≤ 50) ehtiva edir.
Növbəti n sətir hər biri n böyük latın hərfi (boşluqsuz) ehtiva edir, oyun sahəsinin müvafiq hüceyrələrini kodlaşdırır: C şəhər tutan hüceyrəni, D isə boş hüceyrəni göstərir. Sahədə ən azı iki şəhərin olduğu və ümumilikdə onların cüt sayda olduğu zəmanət verilir.
Çıxış məlumatları
Hər biri n rəqəmdən (boşluqsuz) ibarət n sətir çıxarın, müvafiq hüceyrələri kodlaşdırır. 1 rəqəmi həmin hüceyrənin birinci dövlətə aid olduğunu, 2 rəqəmi isə həmin hüceyrənin ikinci dövlətə aid olduğunu göstərir.
Əgər bir neçə həll varsa, onlardan hər hansı birini çıxarmaq olar.