題意:
給你乙個n*m的格仔,問你能不能用1*2的格仔把他鋪滿,有的位置是不能被鋪的。
思路:
水題,直接把個相鄰的並且都是可以鋪的點連一條邊然後匹配一遍就行了,提醒乙個地方,就是輸入不能鋪的座標的時候是 先輸入列再輸入行。
#include
#include
#define n_node 1500
#define n_edge 6000
typedef
struct
star;
star e[n_edge];
int list[n_node]
,tot;
int mk_dfs[n_node]
,mk_gx[n_node];
int map[
40][
40];
void
add(
int a ,
int b)
intdfs_xyl
(int x)
}return0;
}int
main
()memset
(list ,0,
sizeof
(list));
tot =1;
for(i =
1;i <= n ;i ++)
for(j =
1;j <= m ;j ++)
int sum =0;
memset
(mk_gx ,
255,
sizeof
(mk_gx));
for(i =
1;i <= n * m ;i ++)
if(sum == n * m - k)
puts
("yes"
);else
puts
("no");}
return0;
}
POJ2446 模板蓋格仔 簡單二分匹配
題意 給你乙個n m的格仔,有的格仔上有坑,然後讓你用1 2的東西去覆蓋所有沒有坑的格仔,不能重疊,坑上也不能放東西覆蓋,問是否能成功。思路 簡單題目,每個格仔和四周的格仔如果可以放在同乙個1 2的裡面那麼就連線一條邊,直接匹配一遍就行了,有的人可能想問為什麼?可以這麼想,首先如果像覆蓋所有的格仔那...
poj 3343 二分匹配 二分
題意 n個人類星球和m個外星人星球,每個星球 包括外星人的 都有乙個初始的飛船數sh1 i 還有乙個每年生產的飛船數p i 還有乙個n m的矩陣d,d i,j 表示從人類星球i到外星人星球j的年數 年啊 當乙個人類星球i可以擊敗乙個外星人星球j的唯一條件是在出發年數ye,ye d i,j p i s...
POJ3020 二分匹配
思路 說給自己 一開始想的是從1 h w標記整幅圖,建圖是星號和 建邊,肯定要去匹配 啊,所以空格一定不會去造,然後就理解成了最小點覆蓋,然而對於最小點覆蓋,對於 孤立點 也就是沒有連出去的邊 這樣就錯了。但是對於這個思路還是打完了,然後發現錯了。其實對於 正確 思路要先想想是嘛。正解 這題題意是乙...