Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
Re:AC了的程序,仅供参考In Reply To:AC了的程序,仅供参考 Posted by:A861223 at 2006-08-03 19:29:23 > #define maxn 1001 > #include<string.h> > #include<stdio.h> > long int use[maxn],f[maxn][maxn],d[maxn]; > long int min(long int a,long int b) > {long int z; > if (a>=b) z=b; > else z=a; > return(z); > } > void main() > { long int max,k,q,i1,j1,i,j,x,y,n,m; > scanf("%ld",&q); > for(i1=1;i1<=q;i1++) > {scanf("%ld %ld",&n,&m); > memset(f,0,sizeof(f)); > for (j1=1;j1<=m;j1++) > {scanf("%ld %ld",&x,&y); > scanf("%ld",&f[x][y]); > f[y][x]=f[x][y];} > memset(d,0,sizeof(d));memset(use,0,sizeof(use)); > for (i=1;i<=n;i++) d[i]=f[1][i];use[1]=1; > for (k=1;k<=n-1;k++) > {max=0; > for (i=1;i<=n;i++) > if (use[i]==0&&d[i]>max) {j=i;max=d[i];} > use[j]=1; > for (i=1;i<=n;i++) > if ((use[i]==0)&&(min(d[j],f[j][i])>d[i])) d[i]=min(d[j],f[j][i]); > } > printf("Scenario #%ld:\n",i1); > printf("%ld\n",d[n]); > printf("\n"); > } > } Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator