| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 935 人关注过本帖
标题:请大家帮帮找找错误啊 都郁闷死了
只看楼主 加入收藏
草狼
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:2
帖 子:577
专家分:1040
注 册:2010-4-6
结帖率:94.44%
收藏
已结贴  问题点数:100 回复次数:11 
请大家帮帮找找错误啊 都郁闷死了
杭电 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
AGGression
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:2
专家分:102
注 册:2010-5-9
收藏
得分:100 
#include<stdio.h>
#include<memory.h>
long hash[200][200];
bool vist[200];
long  dis[200];
const long lmax=0x7FFFFFFF;
long n;
long S,T;

long Dijkstra()
{
    long i,j,u;
    memset(vist,0,sizeof(vist));

    for (i=0;i<n;++i)
    {
        dis[i]=hash[S][i];
    }

    u=S;
    dis[S]=0;
    vist[S]=true;

    long m_max;
    for (i=1;i<n;++i)
    {
        m_max=lmax;
        for (j=0;j<n;++j)
        {
            if (dis[j]<m_max&&vist[j]==false)
            {
                m_max=dis[j];
                u=j;
            }
        }

        if (m_max==lmax)
        {
            break;
        }

        vist[u]=true;

        for (j=0;j<n;++j)
        {
            if (hash[u][j]!=lmax&&vist[j]==false&&hash[u][j]+m_max<dis[j])
            {
                dis[j]=hash[u][j]+m_max;
            }
        }
    }
    return dis[T];
}

void main()
{
    long m;
    while (~scanf("%ld %ld",&n,&m))
    {
        memset(vist,0,sizeof(vist));

        long i,j;

        for (i=0;i<200;++i)
        {
            dis[i]=lmax;
            for (j=0;j<200;++j)
            {
                hash[i][j]=lmax;
            }
        }

        while (m--)
        {
            long from,to,len;
            scanf("%ld %ld %ld",&from,&to,&len);
            if(len<hash[from][to])
            {
                hash[from][to]=len;
                hash[to][from]=len;
            }
        }
        scanf("%ld %ld",&S,&T);   

        long len=Dijkstra();

        if (len==lmax)
        {
            printf("-1\n");
        }
        else
        {
            printf("%ld\n",len);
        }
    }
}
2010-05-20 11:16
rtgirl
该用户已被删除
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽
2010-05-20 11:18
kingsroot
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:1
帖 子:284
专家分:1159
注 册:2010-3-28
收藏
得分:0 
貌似就是一个带权的图的遍历问题,楼主 你能不能给你代码加点注释哦  看起累的慌
2010-05-20 12:02
itma
Rank: 4
等 级:业余侠客
帖 子:105
专家分:266
注 册:2010-2-8
收藏
得分:0 
以下是引用kingsroot在2010-5-20 12:02:13的发言:

貌似就是一个带权的图的遍历问题,楼主 你能不能给你代码加点注释哦  看起累的慌
en ,shi a.
2010-05-20 12:31
我菜119
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:938
专家分:1756
注 册:2009-10-17
收藏
得分:0 
回复 3楼 rtgirl
我在如鹏网上也看见有个mm也叫这个名字,难道阁下与那个人是一个人吗?

愿用余生致力编程
2010-05-20 12:48
lijm1989
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:珠海
等 级:贵宾
威 望:12
帖 子:675
专家分:2844
注 册:2009-10-14
收藏
得分:0 
百分大贴~~~来玩玩。。LZ看看我运行你的代码后的一个例子。。。考虑下我提供的数据。。应该输出的是什么?
具体不说,LZ加油~~~~
3 3
0 1 2
1 2 3
0 1 4
0 2
7
2010-05-20 12:55
冥卫
Rank: 8Rank: 8
来 自:深山老林
等 级:蝙蝠侠
帖 子:280
专家分:772
注 册:2010-4-20
收藏
得分:0 
加注释啊!
2010-05-20 13:05
wu644877373
Rank: 2
来 自:湖南
等 级:论坛游民
帖 子:47
专家分:30
注 册:2010-5-11
收藏
得分:0 
100分,,,可惜我是新手,没办法帮你了 。

2010-05-20 14:07
wangjianhui
Rank: 8Rank: 8
来 自:^帅帅城^
等 级:蝙蝠侠
威 望:2
帖 子:353
专家分:745
注 册:2010-3-19
收藏
得分:0 
有难度··

加油
2010-05-20 14:23
快速回复:请大家帮帮找找错误啊 都郁闷死了
数据加载中...
 
   



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

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