k半徑覆蓋問題

2022-05-21 14:30:06 字數 571 閱讀 2304

乙個點可以覆蓋半徑2以內的的點,最少多少點可以全覆蓋(可以延伸為k半徑)

預處理出每個點深度,從最深的點開始網上覆蓋,dis陣列表示最近的覆蓋中心點的距離,大於2(k)時,把他的2(k)代設成覆蓋中心(貪心思想,保證最遠且剛好能覆蓋當前點)

#include using

namespace

std;

typedef

long

long

ll;const ll mod=998244353

;const

int maxn=500005

;int

n;int dis[100005],fa[100005],dep[100005],id[100005

],ant;

bool cmp(int a,int

b)int

main()

sort(id+1,id+1+n,cmp);

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

}printf(

"%d\n

",ant);

return0;

}

NEFU709 第K個圓的半徑

題目 the kth circle 題意 平面上給定n個點的座標,我們可以選其中 3點構成乙個圓,當然也就有 3段弧,我們定義第 k個圓滿足條件 1 除了已選的3 個點,剩下的 n 3個點中有 k個點在圓內,有 n k 1 個點在圓外 2 保證所有的點在圓的三條弧中其中一條弧的一側 解析 本題實際上...

集合覆蓋問題 最大覆蓋問題 呼叫中心排班問題閒談

一 集合覆蓋問題 集合覆蓋問題 set covering problem 簡稱scp 是運籌學研究中典型的組合優化問題之一,工業領域裡的許多實際問題都可建模為集合覆蓋問題,如資源選擇問題 設施選址問題 移動基站的選址 物流中心的選址 等。scp的乙個典型應用描述如下 要在乙個城市建造若干個消防隊駐紮...

集合覆蓋問題 最大覆蓋問題 呼叫中心排班問題閒談

經典scp描述包含乙個集合u以及u內元素構成的 若干各小類集合s,目標是找到s 的乙個子集,該子集滿足所含元素包含了所有的元素且使小類集合個數最少。例如,u s 找到集合能滿足條件的可以有o 或是o 至於具體選哪種組合,還有引申的乙個問題 wsc,即weighted set cover加權集合覆蓋,...