标题:新人求助一道题!过桥问题。。。。。
只看楼主
pangshch
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:2
帖 子:443
专家分:1966
注 册:2013-4-9
得分:0 
回复 7楼 LeslieCh
你的可能是程序运行超时了吧,
不用排序的.
我的代码你提交的结果是什么?
2013-12-25 11:56
LeslieCh
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2013-11-27
得分:0 
回复 11楼 pangshch
运行complie error..
Main.cc: In function ‘int main()’:
Main.cc:12: error: invalid conversion from ‘int*’ to ‘unsigned int*’
Main.cc:16: warning: comparison between signed and unsigned integer expressions
Main.cc:19: warning: comparison between signed and unsigned integer expressions
Main.cc:20: warning: comparison between signed and unsigned integer expressions
Main.cc:10: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result
Main.cc:17: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result

辅助解释:
warning: ignoring return value of:警告:忽略了函数的返回值,可能是函数用错或者没有考虑到返回值异常的情况
2013-12-28 16:59
pangshch
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:2
帖 子:443
专家分:1966
注 册:2013-4-9
得分:0 
回复 12楼 LeslieCh
程序代码:
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
    unsigned n;
    unsigned *a;    // 动态分配内存
    unsigned s = 0; // 求和.过桥的时间.
    int i, min;

    scanf("%u", &n);

    a = (unsigned *)malloc(n*sizeof(unsigned int));
    if (a == NULL)
        exit(1);

    for (i = 0; i < n; i++)
        scanf("%u", &a[i]);

    for (min = a[0], i = 1; i < n; i++) {
        if (a[i] >= min)   // 大于min的值求和.
            s += a[i];
        else {
            s += min;    // 有新的最小值.先把现在的min求和.
            min = a[i];  // 再将min赋最小值.
        }
    }
    if (n == 1)        // n == 1;
        s = a[0];
    printf("%u\n", s);
    free(a);      // 释放内存。
    return 0;
}





2013-12-28 17:12
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
得分:0 
回复 13楼 pangshch
呵呵,这个贴子我看了很长时间了。你的代码在算法层面一直都是错的。

本来不想参与,希望你们在探讨的过程中能发现问题自己改正,但到现在仍没有改观。

你还在努力地写代码,但算法不对这个编译器帮不了你。你还需要从源头好好分析一下这个问题。

这个问题本身不难,网上的分析文章也很多,几乎把这贴子的标题复制粘贴到百度里就直接能找到答案。

当然基本只有结果,理论证明我是没见过。我倒建议你在这方面多下点功夫,毕竟写代码不是靠感觉的事。

如果你能完成这个问题的理论分析,那你在动态规划、贪心算法方面就有了一次质的飞跃,以后再遇到相关问题就可能秒杀了。

完成了算法分析,敲代码其实是件很简单的事。

不多说了,只是一个善意的提醒给你指一个方向少走弯路,但路还是要自己走的

重剑无锋,大巧不工
2013-12-28 18:04
pangshch
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:2
帖 子:443
专家分:1966
注 册:2013-4-9
得分:0 
回复 14楼 beyondyf
谢谢B版.
2013-12-29 08:48
wu2304211
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2015-3-10
得分:0 
如何输入输出都是多组数据呢??

2015-03-20 11:03



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-425590-1-1.html




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

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