感覺回到了noip水平。
最小生成樹有乙個性質就是最小生成樹必為最小瓶頸生成樹,即最大邊的邊權最小(從kruskal演算法的構造過程很容易看出這點,畢竟是從小到大加邊),於是此題很水,mst求完後最後加的那條邊就是樹上的最大邊,用每個猴子的半徑比一下就好了。
#include#include#include#include#includeusing namespace std;
const int n=1000+5;
struct edge
while(ch>='0'&&ch<='9')
return x*f;
}int x[n],y[n];
inline double sqr(double x)
inline double dist(int i,int j)
int pa[n],r[n],m,n,cnt;
int findset(int x)
double mst() }}
int main()
double limit=mst();
int ans=0;
for(int i=1;i<=m;i++)
if(r[i]>=limit)ans++;
printf("%d",ans);
return 0;
}
bzoj2429 HAOI2006 聰明的猴子
description 第1行為乙個整數,表示猴子的個數m 2 m 500 第2行為m個整數,依次表示猴子的最大跳躍距離 每個整數值在1 1000之間 第3行為乙個整數表示樹的總棵數n 2 n 1000 第4行至第n 3行為n棵樹的座標 橫縱座標均為整數,範圍為 1000 1000 同一行的整數間用...
HAOI2006 聰明的猴子
在乙個熱帶雨林中生存著一群猴子,它們以樹上的果子為生。昨天下了一場大雨,現在雨過天晴,但整個雨林的地表還是被大水淹沒著,部分植物的樹冠露在水面上。猴子不會游泳,但跳躍能力比較強,它們仍然可以在露出水面的不同樹冠上來回穿梭,以找到喜歡吃的果實。現在,在這個地區露出水面的有n棵樹,假設每棵樹本身的直徑都...
HAOI2006 聰明的猴子 題解
在乙個熱帶雨林中生存著一群猴子,它們以樹上的果子為生。昨天下了一場大雨,現在雨過天晴,但整個雨林的地表還是被大水淹沒著,部分植物的樹冠露在水面上。猴子不會游泳,但跳躍能力比較強,它們仍然可以在露出水面的不同樹冠上來回穿梭,以找到喜歡吃的果實。現在,在這個地區露出水面的有n棵樹,假設每棵樹本身的直徑都...