两个服务点必须不一样!
|
|
OrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzOrzO
题目 4 双服务点设置
2021-10-11 20:31:24
|
|
我太笨了
题目 4 双服务点设置
2020-05-04 14:48:13
|
|
回复 @梦那边的美好ETMN :
orzorzorzorzorzorzorzorzorzorz orzorzorzorzorzorzorzorzorzorz orzorzorzorzorzorzorzorzorzorz orzorzorzorzorzorzorzorzorzorz 黄XF da lao
题目 4 双服务点设置
2018-09-24 18:17:47
|
|
[size=100]orz[/size]
|
|
bmb
题目 4 双服务点设置
2017-11-05 18:27:18
|
|
#include <iostream>
#include <cstdio> #include <algorithm> #include <cstring> #include <vector> #include <queue> using namespace std; inline int read(){ int num=0,f=1; char c=getchar(); while(!isdigit(c)){if(c=='-') f=-1; c=getchar();} while(isdigit(c)){num=(num<<1)+(num<<3)+(c^48); c=getchar();} return num*f; } #define maxn 500 vector<int>a[maxn],b[maxn]; queue<int>s; int n,m,dis[maxn],diss[maxn],dk[maxn],maxx=127,tt; bool jud[maxn]; inline int in(){ n=read(); m=read(); for(int i=1;i<=m;i++){ int u,v,c; u=read(); v=read(); c=read(); a[u].push_back(v); a[v].push_back(u); b[u].push_back(c); b[v].push_back(c); } } inline int spfa(int x,int y){ memset(jud,0,sizeof(jud)); memset(dis,10,sizeof(dis)); dis[x]=0; s.push(x); while(!s.empty()){ int city=s.front(); s.pop(); int num=a[city].size(); for(int i=0;i<num;i++){ int next=a[city][i]; int next_c=b[city][i]; if(dis[next]>dis[city]+next_c){ dis[next]=dis[city]+next_c; if(!jud[next]){ s.push(next); jud[next]=1; } } } } memset(jud,0,sizeof(jud)); memset(diss,10,sizeof(diss)); diss[y]=0; s.push(y); while(!s.empty()){ int city=s.front(); s.pop(); int num=a[city].size(); for(int i=0;i<num;i++){ int next=a[city][i]; int next_c=b[city][i]; if(diss[next]>diss[city]+next_c){ diss[next]=diss[city]+next_c; if(!jud[next]){ s.push(next); jud[next]=1; } } } } for(int i=0;i<n;i++) dk[i]=min(dis[i],diss[i]); int ha=0; for(int i=0;i<n;i++) ha=max(ha,dk[i]); return ha; } int x,y; inline int work(){ for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ if(i!=j){ int ans=spfa(i,j); if(maxx>ans){ maxx=ans; x=i,y=j; } } } } } inline int out(){ cout<<min(x,y)<<" "<<max(x,y); } int main(){ freopen("djsb.in","r",stdin); freopen("djsb.out","w",stdout); in(); work(); out(); }
题目 4 双服务点设置
2017-10-27 16:41:54
|
|
|
|
题目 4 双服务点设置
2017-05-15 20:19:55
|
|
|
|
|
|
FLOYD暴力过。。。
退役倒计时。。。 |
|
直接暴力
|
|
一直以为第一个点答案是0 4。。。改了20min。。。我选择死亡。。。
|
|
(一口老血)吐槽数据范围
题目 4 双服务点设置
2016-10-21 22:08:42
|
|
范围不能给准点吗???
题目 4 双服务点设置
2016-10-09 21:19:46
|
|
|
|
|
|
把max写成min,智商压制= =
题目 4 双服务点设置
2016-01-16 08:48:07
|
|
用Floyd比SPFA快了1ms,于是就上榜了233333
题目 4 双服务点设置
2015-12-03 12:12:28
|