bzoj1052 覆蓋問題

2022-06-07 16:12:11 字數 924 閱讀 3053

先二分答案,容易發現一定有乙個正方形覆蓋在角上(即有兩條邊在最x的地方),否則4個最x的點一定無法覆蓋,然後暴力確定即可

1 #include2

using

namespace

std;

3struct

ji8 }a[20005];9

int n,vis[20005

];10

void bj(int lx,int rx,int ly,int ry,int

p)14

void clear(int

k)18

bool pd(int l,int

k)24

int lx=1e9,rx=-1e9,ly=1e9,ry=-1e9,p=0;25

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

26if (!vis[i])

32 bj(lx,lx+l,ly,ly+l,k);

33 p|=pd(l,k-1

);34

clear(k);

35 bj(lx,lx+l,ry-l,ry,k);

36 p|=pd(l,k-1

);37

clear(k);

38 bj(rx-l,rx,ly,ly+l,k);

39 p|=pd(l,k-1

);40

clear(k);

41 bj(rx-l,rx,ry-l,ry,k);

42 p|=pd(l,k-1

);43

clear(k);

44return

p;45}46

intmain()

56 printf("%d"

,l);

57 }

view code

BZOJ1052 覆蓋問題(貪心)

bzoj 洛谷這題好神仙啊。很明顯可以看出來要二分乙個邊長。那麼如何ch eck che ck 呢?我們把所有點用乙個最小矩形覆蓋,那麼必定每個邊界上都至少存在乙個點,但是我們有 4 4 個邊界,但是只有 3 role presentation 3 3個矩形,意味著至少有乙個矩形卡住了兩個邊界,那麼...

暴搜 bzoj1052 覆蓋問題

問題 b 覆蓋問題 時間限制 1 sec 記憶體限制 256 mb 題目描述 description 某人在山上種了n棵小樹苗。冬天來了,溫度急速下降,小樹苗脆弱得不堪一擊,於是樹主人想用一些塑料薄 膜把這些小樹遮蓋起來,經過一番長久的思考,他決定用3個l l的正方形塑料薄膜將小樹遮起來。我們不妨將...

暴搜 bzoj1052 覆蓋問題

問題 b 覆蓋問題 時間限制 1 sec 記憶體限制 256 mb 題目描述 description 某人在山上種了n棵小樹苗。冬天來了,溫度急速下降,小樹苗脆弱得不堪一擊,於是樹主人想用一些塑料薄 膜把這些小樹遮蓋起來,經過一番長久的思考,他決定用3個l l的正方形塑料薄膜將小樹遮起來。我們不妨將...