Kryssring | 프로그래밍의 벗 PivotOJ
PivotOJ

Kryssring

시간 제한: 7000ms메모리 제한: 1024MB출처: Programmeringsolympiaden 2018 — lagerBOJ 20875

문제

Simon och Måns sitter på tunnelbanan, och spelar ett spel. Simon ritar upp ett n×mn \times m rutnät och ritar in ett par kryss och ringar i rutorna. Han skriver även ett tal på varje rad.

Måns uppgift är nu att fylla i rutnätet så att varje ruta har ett kryss eller en ring, så att det finns lika många kryss på varje rad som talet som står där. Målet för Måns är att varje rad, kolumn och diagonal har högst 22 kryss eller ringar i rad.

Simon har ritat ut kryssen och ringarna helt på måfå, så det är inte uppenbart att detta är möjligt. Vi kan dock ge Måns poäng beroende på hur väl han lyckats: vi definierar värdet för en utplacering som antalet gånger det förekommer tre kryss eller tre ringar i rad i någon rad, kolumn eller diagonal (åt båda hållen). Måns ska då försöka få så lågt värde han kan.

Hjälp Måns spela spelet så bra som möjligt!

입력

Observera: testdatan på detta problem är öppen. Du kan ladda ner den på attachments.zip. Den första raden innehåller ett heltal 0t100 \le t \le 10, ordningstalet för detta testfall. Fallet t=0t = 0 representar exempelfallet, och ska ignoreras (du kan skriva ut vad du vill då).

Den andra raden innehåller två heltal nn och mm (2n,m5002 \le n, m \le 500): höjden och bredden på rutnätet. Den tredje raden innehåller nn tal: antalet kryss som måste skrivas in på varje rad. Därefter följer nn rader, med mm tecken vardera: det ursprungliga rutnätet. Varje tecken kommer att vara antingen ".", "o" eller "<code>x</code><code>x</code>", där "." betyder att rutan ännu inte fyllts i.

Det är garanterat att antalet kryss som finns i varje rad är högst lika med talet som Simon skrivit för den raden.

출력

Skriv ut nn rader med mm tecken vardera: det helt ifyllda rutnätet, där alla "." bytts ut mot antingen "o" eller "x".

Notera att Kattis har en storleksgräns på källkod på 128kB. För rutnäten av maximal storlek går det därmed inte att hårdkoda kompletta lösningar i koden.

예제

예제 1

입력
0
10 10
5 2 5 3 3 2 5 5 6 5
.....o..o.
..........
..o.......
.....o....
..........
...x......
.o..x.....
...o......
....xo....
.o........
출력
oxxxxooxoo
oooooxxooo
oxoxooxoxx
ooxxooxooo
oxooxoxooo
oxoxoooooo
ooxoxoxxxo
ooxooxxxox
oxxxxoxxoo
ooxooxxxxo
이 문제는 채점 준비 중입니다. 테스트 데이터가 확보되면 제출이 가능합니다.