本人 14,初三,男,连 PJ 2= 都没有。
这是我的码风:
#include<bits/stdc++.h>
const int N=13,M=1<<12;long w=1e10,n,m,x,y,z,i,j,k,l,L,s,_[N][M],d[M][M],g[N][N],D[N][M],ans=w;main(){std::memset(_,1,425984);for(i=!scanf("%ld%ld",&n,&m),s=1<<n;++i<=n;){for(j=0;++j<=n;)g[i][j]=w;for(j=0;j<s;)D[i][j++]=w;}for(;m--;g[x][y]=g[y][x]=std::min(g[x][y],z))scanf("%ld%ld%ld",&x,&y,&z);for(i=-1;++i<s;)for(j=0;++j<=n;)for(k=i;k;k^=k&-k)D[j][i]=std::min(D[j][i],g[j][__builtin_ffs(k)]);for(i=-1;++i<s;)for(j=1,l=1;j<s;j++,l=j&-j)d[i][j]=d[i][j^l]+D[__builtin_ffs(j)][i];for(i=1;i<=s;i*=2)_[1][i]=0;for(L=2;L<=n;ans=std::min(ans,_[L++][s-1]))for(i=-1;++i<s;)for(j=i;j;j=(j-1)&i)_[L][i]=std::min(_[L][i],_[L-1][i^j]+d[i^j][j]*(L-1));printf("%ld",(ans!=w)*ans);}
有志同道合的 OIer 吗?如有,请私信。