求助

P2910 [USACO08OPEN] Clear And Present Danger S

floyd 打错了
by cnyzz @ 2020-06-21 09:57:47


@[菜鸟一只](/user/175829) 错哪了?
by luomuran @ 2020-06-21 10:01:23


神奇的是我把那循环重复3遍就过了 ```cpp #include<bits/stdc++.h> using namespace std; long long n,m,a[100001],f[101][101],ans; int main() { scanf("%lld%lld",&n,&m); for(int i=1;i<=m;i++) scanf("%d",&a[i]); for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) scanf("%lld",&f[i][j]); for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) for(int k=1;k<=n;k++) f[i][j]=min(f[i][j],f[i][k]+f[k][j]); for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) for(int k=1;k<=n;k++) f[i][j]=min(f[i][j],f[i][k]+f[k][j]); for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) for(int k=1;k<=n;k++) f[i][j]=min(f[i][j],f[i][k]+f[k][j]); for(int i=1;i<m;i++) ans+=f[a[i]][a[i+1]]; printf("%lld",ans); return 0; } // ``` 像这样
by luomuran @ 2020-06-21 10:02:04


@[菜鸟一只](/user/175829) 啊我知道了
by luomuran @ 2020-06-21 10:02:53


|