給你一個長方形的區塊,這個區塊裡面並不一定是一個完整的形狀。如果請你用最少數量的正方形來拚出我給你的形狀,那麼這是一個很難的問題。非常的難。對於你有限的智力來講,這太難了。所以我不會問你這個問題。為什麼要浪費你和我的時間呢?
取而代之的,你的任務只是簡單的要求你用正方形把這個區塊拚出來而以。這就是我要問你的題目。你認為你可以做到嗎?我有很多臘筆可以給你用喔。(用不同的顏色來表示正方形,至於每一種顏色則是用大寫字母 A~Z 來表示。)
對了,請確保每個相鄰的兩個正方形是著不同顏色的,這樣子我們才分辨得出來。(相鄰的意思就是兩個正方形的邊有重疊;如果只是角落重疊,就不算是相鄰。)
喔,還有,我會很謝謝你如果你解法的字典順序是第一個。(換句話說,一個解法包括數行,如果把這數行合成一行,也就是一個字,那麼正確解答所合成的字排在字典裡的順序應該要為第一個。)
Input
每個測資都會給你一個區塊,請你用正方形來填補。開頭的兩個數字為
m(0 < m <= 100) ,代表有幾列,還有 n(0 < n
<= 80) ,代表有幾直行。接下來有 m
行為這個區塊。區塊中,'?'代表要填色的區域,而'.'代表不需要著色。
Output
對於每個測資,印出你用正方形所拚出來的結果。測資和測資中間要以空白行隔開。
Sample Input
5 5 ????. ???.? ????? ????? ????. 5 5 ????? .???. .???. .???. ????? 0 0
Sample Output
AAAB. AAA.A AAABB BBCBB BBAC. ABAAB .CAA. .ABB. .CBB. ABACA