啊哈磊_编程从这里起步
标题:
12052
[打印本页]
作者:
admin
时间:
2015-10-5 17:00
标题:
12052
这个代码有问题
[mw_shl_code=c,true]#include <stdio.h>
#include <stdlib.h>
/*
5 5
4 3 5 6 1
1 2 1
1 4 1
2 3 2
3 5 1
4 5 2
*/
int qmin(int p,int q)
{
return p<q?p:q;
}
int qmax(int p,int q)
{
return p>q?p:q;
}
int main()
{
int min[101][101],max[101][101],n,m,i,j,k,t1,t2,t3,a[101],zuida,t;
scanf("%d %d",&n,&m);
for(i=1;i<=n;i++)
{
scanf("%d",&a
);
}
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
if(i!=j)
{
min
[j]=-1;
max
[j]=-1;
}
else
{
min
[j]=a
;
max
[j]=a
;
}
}
}
for(i=1;i<=m;i++)
{
scanf("%d %d %d",&t1,&t2,&t3);
min[t1][t2]=qmin(a[t1],a[t2]);
max[t1][t2]=qmax(a[t1],a[t2]);
if(t3==2)
{
min[t2][t1]=qmin(a[t1],a[t2]);
max[t2][t1]=qmax(a[t1],a[t2]);
}
}
for(k=1;k<=n;k++)
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
{
if(min
[k]!=-1 && min[k][j]!=-1)
{
if(min
[j]==-1)
{
t=qmin(a
,a[j]);
t=qmin(t,a[k]);
min
[j]=t;
}
else
{
t=qmin(a
,a[j]);
t=qmin(t,a[k]);
min
[j]=qmin(min
[j],a[k]);
}
}
}
for(k=1;k<=n;k++)
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
{
if(max
[k]!=-1 && max[k][j]!=-1)
{
if(max
[j]==-1)
{
t=qmax(a
,a[j]);
t=qmax(t,a[k]);
max
[j]=t;
}
else
{
t=qmax(a
,a[j]);
t=qmax(t,a[k]);
max
[j]=qmax(max
[j],t);
}
}
}
printf("\n\n\n");
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
printf("%3d ",min
[j]);
}
printf("\n");
}
printf("\n");
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
printf("%3d ",max
[j]);
}
printf("\n");
}
zuida=0;
for(i=1;i<=n;i++)
{
if(max
[n]-min[1]
>zuida && max
[n]!=-1 && min[1]
!=-1)
zuida=max
[n]-min[1]
;
}
printf("%d",zuida);
system("pause");
return 0;
}
[/mw_shl_code]
欢迎光临 啊哈磊_编程从这里起步 (https://bbs.codeaha.com/)
Powered by Discuz! X3.2