这道题不能用 memset 初始化,因为初始化之后在这一步: ans = min(ans, dist[i][j] + g[i][k] + g[k][j]);,g 和 dist 可能都是你初始化的值,不管你开没开 long long,因为 memset 是按照字节赋值,所以必爆!
memset
ans = min(ans, dist[i][j] + g[i][k] + g[k][j]);
g
dist
long long
应该改为用循环赋值。