2017 Wuhan University Programming Contest 现场赛 K.Wifi Relay(最短路变形)
2017-04-17 19:50
423 查看
题目链接:Wifi Relay
思路:直接从第一个点开始,寻找离它最近的点,并更新两点间的距离,类似于最短路的思想,但是此法大大节省了空间
代码:
思路:直接从第一个点开始,寻找离它最近的点,并更新两点间的距离,类似于最短路的思想,但是此法大大节省了空间
代码:
#include<bits/stdc++.h> using namespace std; #define maxn 10010 #define min(a,b) (a<b?a:b) #define max(a,b) (a>b?a:b) typedef long long LL; const LL inf=1ll<<62; struct point { LL x,y; } pos[maxn]; LL dis[maxn],vis[maxn]; LL n; LL sqr(LL x) { return x*x; } LL get_dis(point a,point b) { return sqr(a.x-b.x)+sqr(a.y-b.y); } LL update(LL id)//寻找最近的点 { LL current=inf,res=-1; for(LL i=0; i<n; ++i) { if(vis[i]) continue; dis[i]=min(dis[i],get_dis(pos[id],pos[i])); if(dis[i]<current) { current=dis[ 4000 i]; res=i; } } return res; } int main() { scanf("%lld",&n); for(LL i=0; i<n; ++i) scanf("%lld%lld",&pos[i].x,&pos[i].y); memset(dis,0x3f,sizeof(dis)); LL ans=0,last=0; vis[0]=1,dis[0]=0; for(LL i=1; i<n; ++i) { last=update(last); ans=max(ans,dis[last]); vis[last]=1; } printf("%.12lf\n",sqrt(ans)/2); return 0; }
相关文章推荐
- 2017 Wuhan University Programming Contest 现场赛 K.Wifi Relay(最短路变形)
- 2017 Wuhan University Programming Contest 现场赛 K.Wifi Relay(最短路变形)
- 2017 Wuhan University Programming Contest 现场赛 K.Wifi Relay(最短路变形)
- 2017 Wuhan University Programming Contest 现场赛 K.Wifi Relay(最短路变形)
- 2017 Wuhan University Programming Contest 现场赛 K.Wifi Relay(最短路变形)
- 2017 Wuhan University Programming Contest 现场赛 K.Wifi Relay(最短路变形)
- 2017 Wuhan University Programming Contest 现场赛 K.Wifi Relay(最短路变形)
- 2017 Wuhan University Programming Contest 现场赛 K.Wifi Relay(最短路变形)
- 2017 Wuhan University Programming Contest 现场赛 K.Wifi Relay(最短路变形)
- 2017 Wuhan University Programming Contest 现场赛 K.Wifi Relay(最短路变形)
- 2017 Wuhan University Programming Contest 现场赛 K.Wifi Relay(最短路变形)
- 2017 Wuhan University Programming Contest 现场赛 K.Wifi Relay(最短路变形)
- 2017 Wuhan University Programming Contest 现场赛 K.Wifi Relay(最短路变形)
- Gym - 101502I最短路变形(2017 JUST Programming Contest 3.0 I. Move Between Numbers)
- 2017 Wuhan University Programming Contest 现场赛 K.Wifi Relay(dijkstra)
- 2017 Wuhan University Programming Contest 现场赛G. Room
- 2017 Wuhan University Programming Contest 现场赛 I. A simple math problem(矩阵快速幂)
- 2017 Wuhan University Programming Contest 现场赛 I. A simple math problem(矩阵快速幂)
- 2017 Wuhan University Programming Contest 现场赛G. Room
- 2017 Wuhan University Programming Contest 现场赛 I. A simple math problem(矩阵快速幂)