开了O2之后也只能90
#include<bits/stdc++.h>
using namespace std;
int x,y,z,n,m,dis[1010][1010],ans;
int read()
{
int f=0,x=0;
char c=getchar();
for(;c>'9'||c<'0';c=getchar())
if(c=='-')
f=1;
for(;c>='0'&&c<='9';c=getchar())
x=(x<<1)+(x<<3)+c-'0';
return f?-x:x;
}
int main()
{
n=read(),m=read();
memset(dis,0x3f,sizeof(dis));
for(register int i=1;i<=m;i++)
{
x=read(),y=read(),z=read();
dis[x][y]=min(dis[x][y],z);
}
for(register int k=1;k<=n;k++)
for(register int i=1;i<=n;i++)
for(register int j=1;j<=n;j++)
dis[i][j]=min(dis[i][k]+dis[k][j],dis[i][j]);
for(register int i=2;i<=n;i++)
ans+=dis[1][i]+dis[i][1];
printf("%d",ans);
return 0;
}