Uva 11520 填充正方形

2022-04-01 07:18:04 字數 593 閱讀 9443

題意:給定乙個n*n的正方形,把剩下的格仔中填滿大寫字母,任意兩個相鄰的格仔字母不同,要求最後字典序最小;

分析:第一想法回溯啊,當然是不對的,100個點回溯會死人的!

其實,可以發現,每個點不可能說,由於前面的決策,後來不能滿足了,相鄰的點有4個,我有26個英文本母。

1 #include 2

3using

namespace

std;45

const

int maxn = 10 + 5;6

intn;

7char

maps[maxn][maxn];89

10int

main()

1130}31

}32}33

}3435 printf("

case %d:\n

",kase++);

36for(int i=0;i)

37 printf("

%s\n

",maps[i]);

3839}40

return0;

41 }

view code

UVA11520填充正方形

題意 給你乙個n n的矩陣,讓你往裡面新增大寫字母,矩陣有的字母已經給填好了,然後要求是每個格仔都不能與他相鄰的格仔的大寫字母相同,如果有多個答案,輸出從上到下,從左到右所連線的成的那個n n長度的字串的ascii碼最小。思路 大家都知道4色定理吧,四種顏色能把任何地圖都畫出來,並且相鄰的顏色不同,...

OJ 1035 填充正方形

描述 在乙個n n的網格中填寫了一些大寫字母,你的任務是把剩下的格仔中也填滿大寫字母,使得任意相鄰格仔中的字母不同.如果有多種填法,則要求按照從上到下,從左到右的順序把所有格仔連起來得到的字串的字典序應最小.輸入多組測試資料,每組測試資料的第一行為乙個正整數n.1 n 10 接下來n行分別有n個字元...

UVa 1603 破壞正方形

題意 有乙個火柴棍組成的正方形網格,計算至少要拿走多少根火柴才能破壞所有正方形。思路 從邊長為1的正方形開始遍歷,將正方形的邊長和它的實際火柴數儲存起來。之後dfs搜尋。include include using namespace std const int maxn 60 int n,m,bes...