样例已过

P1730 最小密度路径

看返回信息好像是OMG!的问题。
by _Revenge_ @ 2022-07-31 09:56:17


代码贴错了,ld 是long double
by _Revenge_ @ 2022-07-31 09:59:54


```cpp #include<bits/stdc++.h> using namespace std; typedef long long ll; typedef long double ld; const int N=55; const int M=1e3+50; const ll inf=0x3f; ll n,m,q; ll dis[N][N][M]; int main() { scanf("%lld%lld",&n,&m); memset(dis,inf,sizeof(dis)); for(ll i=1;i<=m;++i){ ll u,v,w; scanf("%lld%lld%lld",&u,&v,&w); dis[u][v][1]=min(dis[u][v][1],w); } for(ll k=2;k<=m;++k){ for(ll w=1;w<=n;++w){ for(ll u=1;u<=n;++u){ for(ll v=1;v<=n;++v){ if(dis[u][v][k]>dis[u][w][k-1]+dis[w][v][1]){ dis[u][v][k]=dis[u][w][k-1]+dis[w][v][1]; } } } } } scanf("%lld",&q); for(ll i=1;i<=q;++i){ ll u,v; scanf("%lld%lld",&u,&v); ld ans=inf; for(ll j=1;j<=n;++j){ if(dis[u][v][j]==inf) continue; ld tmp=(ld)(dis[u][v][j])/(ld)(j); ans=min(tmp,ans); } if(ans!=inf) printf("%.3Lf\n",ans); else printf("OMG!\n"); } return 0; } ```
by _Revenge_ @ 2022-07-31 10:01:56


@[_Revenge_](/user/750803) 你不还是错的吗?
by 赛克尔だよ @ 2022-07-31 10:11:05


@[赛克尔だよ](/user/376348) 是的啊,只不过第一个直接CE了
by _Revenge_ @ 2022-07-31 10:11:41


@[_Revenge_](/user/750803) C++11倒是没CE,但全WA
by 赛克尔だよ @ 2022-07-31 10:13:30


我用CP editor
by _Revenge_ @ 2022-07-31 10:20:12


@[_Revenge_](/user/750803) ```cpp #include<bits/stdc++.h> using namespace std; typedef long long ll; typedef long double ld; const int N=55; const int M=1e3+50; const ll inf=1000000000; ll n,m,q; ll dis[N][N][M]; int main() { scanf("%lld%lld",&n,&m); for(ll l=1;l<=m;l++) for(ll i=1;i<=n;i++) for(ll j=1;j<=n;j++) dis[i][j][l]=inf; for(ll i=1;i<=m;++i){ ll u,v,w; scanf("%lld%lld%lld",&u,&v,&w); dis[u][v][1]=min(dis[u][v][1],w); } for(ll k=2;k<=m;++k){ for(ll w=1;w<=n;++w){ for(ll u=1;u<=n;++u){ for(ll v=1;v<=n;++v){ if(dis[u][v][k]>dis[u][w][k-1]+dis[w][v][1]){ dis[u][v][k]=dis[u][w][k-1]+dis[w][v][1]; } } } } } scanf("%lld",&q); for(ll i=1;i<=q;++i){ ll u,v; scanf("%lld%lld",&u,&v); ld ans=inf,minn=inf; for(ll j=1;j<=n;++j){ if(dis[u][v][j]<inf)ans=double(dis[u][v][j])/double(j); if(ans<minn) minn=ans; } if(minn!=inf) printf("%.3Lf\n",minn); else printf("OMG!\n"); } return 0; } ```
by 赛克尔だよ @ 2022-07-31 10:25:59


@[_Revenge_](/user/750803) 我也用CP Editor的
by 赛克尔だよ @ 2022-07-31 10:27:14


我帮你调好了
by 赛克尔だよ @ 2022-07-31 10:27:33


| 下一页