poj 1691 dfs 矩形塗色

2021-06-28 12:01:26 字數 557 閱讀 3977

題意:有乙個矩形框由n個小的矩形組成,現在要把每個矩形塗上一種給定的顏色c(可相同可不同,如下圖)。塗每個小矩陣有乙個條件,就是位於它上面,並且與它連線的小矩形必須先塗好。當然滿足條件的同一種顏色可以一起塗,問最少需要多少把刷子(每把刷子一種顏色,如果刷子拿起來多次,那麼這些都要加上)。原題上有圖(

思路:dfs。先遍歷每對小矩形,確定他們有沒有依賴關係。g陣列和d陣列的意義見**。第一次寫沒加now>res的那個剪枝導致tle。加上便ac。

#include #include #define min(a,b) ((a)<(b)?(a):(b))

#define n 20

struct pointp[n];

int used[n],d[n],g[n][n];

int t,n,res;

void dfs(int x,int c,int now)

for(i = 1;i<=n;i++)

if(!d[i] && !used[i])

}int main()

return 0;

}

POJ1691平板塗色

題目描述 原題來自 poj 1691 ce 數碼公司開發了一種名為自動塗色機 apm 的產品。它能用預定的顏色給一塊由不同尺寸且互不覆蓋的矩形構成的平板塗色。為了塗色,apm 需要使用一組刷子。每個刷子蘸了顏色 c apm 拿起一把蘸有顏色 c 的刷子,並給所有顏色為 c 的矩形塗色。請注意,塗色有...

dfs大樓之洛谷1691

設r 是要進行排列的n個元素。其中元素r1,r2,rn可能相同。使設計乙個演算法,列出r的所有不同排列。給定n以及待排列的n個元素。計算出這n個元素的所有不同排列。輸入格式 第1行 元素個數n 1 n 500 第2行 一行字串,待排列的n個元素 輸出格式 計算出的n個元素的所有不同排列,最後一行是排...

POJ 3070 Fibonacci(快速冪矩陣)

題目鏈結 不是很了解,線代的行列式和矩陣乘法,忘的差不多了。這個矩陣的n 1次方的左上角那個數就是菲薄那切數列的第n項。快速冪矩陣,和快速冪模差不多,把數相乘換成矩陣相乘了。渣 請無視,改天整理乙個模版版本。1 include 2 include 3 include 4 include 5 usin...