这个题解CE了,请求撤下
查看原帖
这个题解CE了,请求撤下
750214
___zhangzhongji___楼主2023/8/13 19:57
// luogu-judger-enable-o2
// C++11
#pragma GCC optimize("Ofast,no-stack-protector,unroll-loops,fast-math")
#pragma GCC target("sse,sse2,sse3,ssse3,sse4.1,sse4.2,avx,avx2,popcnt,tune=native")
#include <immintrin.h>
#include <emmintrin.h>
#include <bits/stdc++.h>
#define ri register int
using namespace std;
inline int read(){
    int x=0,f=1;char ch=getchar();
    while(!isdigit(ch)){if(ch=='-')f=-1;ch=getchar();}
    while(isdigit(ch)){x=(x<<3)+(x<<1)+(ch^48);ch=getchar();}
    return x*f;
}
int n,m,dis[1005][1005];
int main(){
    memset(dis,0x3f,sizeof(dis));
    n=read();m=read();
    for(ri i=1,x,y,z;i<=m;++i){
        x=read();y=read();z=read();
        dis[x][y]=min(dis[x][y],z);
    }
    for(ri k=1;k<=n;++k)
        for(ri i=1;i<=n;++i)
            for(ri j=1;j<=n;++j)
                dis[i][j]=min(dis[i][k]+dis[k][j],dis[i][j]);
    int ans=0;
    for(ri i=2;i<=n;++i)
        ans+=(dis[i][1]+dis[1][i]);
    printf("%d\n",ans);
    return 0;
}
2023/8/13 19:57
加载中...