| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 935 人关注过本帖
标题:请大家帮帮找找错误啊 都郁闷死了
取消只看楼主 加入收藏
草狼
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:2
帖 子:577
专家分:1040
注 册:2010-4-6
结帖率:94.44%
收藏
已结贴  问题点数:100 回复次数:1 
请大家帮帮找找错误啊 都郁闷死了
杭电 http://acm.hdu. 这题我的代码如下,自己测了很多数据都是对的  为什么就不给我AC啊  求错哪了,知道的情速度回答,高分答谢 , 我是用迪杰特拉算法做的
#include<stdio.h>
int mp[300][300],flag[300],d[300];
int chengshi,lu,begin,end,max=9999999,min;

void dfs(int x)
{
    int i,j,v;
    v=x;
    for(i=0;i<chengshi;i++)
        d[i]=mp[x][i];
    flag[x]=1;
    for(i=0;i<chengshi;i++)
    {
        min=max;
        for(j=0;j<chengshi;j++)
            if(d[j]<min && flag[j]==0)
            {
                min=d[j];
                v=j;
            }
          if(min==max)  break;
            flag[v]=1;
            for(j=0;j<chengshi;j++)
                if(flag[j]==0 && mp[v][j]+min<d[j])
                    d[j]=mp[v][j]+min;
    }
      
}

int main()
{
    int i,j,a,b,w;
    while(scanf("%d%d",&chengshi,&lu)!=EOF)
    {
        for(i=0;i<chengshi;i++)
        {
            flag[i]=0;
            for(j=0;j<chengshi;j++)
                mp[i][j]=max;
        }
        for(i=0;i<lu;i++)
        {
            scanf("%d%d%d",&a,&b,&w);
            mp[a][b]=mp[b][a]=w;
        }
        scanf("%d%d",&begin,&end);
        if(begin==end) printf("0\n");
        else
        {
            dfs(begin);
            if(d[end]!=max) printf("%d\n",d[end]);
            else
                printf("-1\n");
        }
    }
    return 0;
}
搜索更多相关主题的帖子: max include 
2010-05-20 11:12
草狼
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:2
帖 子:577
专家分:1040
注 册:2010-4-6
收藏
得分:0 
回复 6楼 我菜119
fuck 我是个男的
2010-05-20 16:45
快速回复:请大家帮帮找找错误啊 都郁闷死了
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.037010 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved