迷之60分求助

P1547 [USACO05MAR] Out of Hay S

好吧,数组开小了,但为什么是WA不是RE?
by Okarin @ 2017-10-26 19:50:39


蛤 并查集 我的貌似不是并查集…… 凑合着看吧 ```cpp #include<cstdio> #include<cstring> #include<algorithm> #define f(i,a,b) for(int i=(a);i<=(b);i++) long long g[2005][2005],f[10005],ans,n,m,x,y,z; bool used[10005]; int main() { memset(f,20,sizeof(f)); memset(g,0x3f3f3f,sizeof(g)); scanf("%lld%lld",&n,&m); f(i,1,m) { scanf("%lld%lld%lld",&x,&y,&z); if(z<g[x][y]) { g[x][y]=z; g[y][x]=z; } } f[1]=0; f(i,1,n-1) { long long minx=1,id; minx=minx << 60; f(j,1,n) if(!used[j] && f[j]<minx) { minx=f[j]; id=j; } used[id]=true; f(j,1,n) if(!used[j] && f[j]>g[id][j]) f[j]=g[id][j]; } f(i,1,n) ans=std::max(f[i],ans); printf("%lld",ans); return 0; } ```
by VenusM1nT @ 2017-10-26 20:19:55


你的结构体h数组开的小了,最多有一万条路,所以h要开一万的,f不用变,已经测试AC了
by Ervin @ 2017-10-26 20:30:24


|