| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 582 人关注过本帖
标题:acm大神帮忙看看,偶遇一道自认为的水题,短短的十几行代码,去总是wa..... ...
只看楼主 加入收藏
lianjiecuowu
Rank: 3Rank: 3
来 自:安徽
等 级:论坛游侠
帖 子:152
专家分:107
注 册:2011-5-20
结帖率:85.71%
收藏
已结贴  问题点数:20 回复次数:5 
acm大神帮忙看看,偶遇一道自认为的水题,短短的十几行代码,去总是wa.......到底是哪里出现的问题?
[M]最大子段和
Accept:14     Submit:82
Time Limit:1000MS     Memory Limit:65536KB
 [Description]
算法分析课上我们接触过最大子段和的例题.可是teoy不喜欢写算法作业,现在就由你来帮助他完成这段代码的实现。所谓最大子段和,就是在给出的整数序列中,找出一个个数大于零的连续子段,使其和最大。 [Input]一共有T组测试数据。每组数据第一行为一个整数n,表示给出的整数序列长度。接下来一行共n个整数,第i个数Ai表示序列的第,i个数。 数据范围:0<T<=100;0<n<=10^4;|Ai|<=10^6; [Output]对于每组数据,输出一个整数,即连续子段的最大和。
[Sample Input]
231 2 -371 -2 3 4 -1 2 -5
[Sample Output]
3
8
下面是我提交的状态,是北京邮电大学的oj啊,ID号码是只是随意的在网上看到了,然后就做,知道是最大子串和,输入输出也正确,思索再三,还是没有头绪,希望大家指点迷津,共同进步~~~~
图片附件: 游客没有浏览图片的权限,请 登录注册

很坑爹吧是不是

下面是我的代码,希望各位牛人帮我看看,到底是哪里错了,顶礼膜拜表示

#include<iostream>
#include<cstdlib>
#include<cstdio>

using namespace std;

int main()
{
    int T;
    scanf("%d",&T);
    while(T--)
    {
        int n;
        scanf("%d",&n);
        int i,sum=0,max=0;
        int temp;
        for(i=0;i<n;i++)
        {
           scanf("%d",&temp);
           if(sum>0)sum+=temp;
           else sum=temp;
           if(sum>max)max=sum;
        }
        printf("%d\n",max);
    }
    return 0;
}
建议大家编好亲自上oj上面提交一下,我已经用过__int64,可还是wa............

[ 本帖最后由 lianjiecuowu 于 2012-7-25 22:46 编辑 ]
搜索更多相关主题的帖子: Memory 
2012-07-25 21:37
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:20 
数列全是负数的情况你考虑了吗?
我好像做过这个 oj,不过好多基本上都忘了,代码也不知道去哪了。做 oj,排错挺痛苦的,北邮有讨论这些问题的论坛吗?找最近做过这些题的人可能会更有帮助。
2012-07-26 00:15
lianjiecuowu
Rank: 3Rank: 3
来 自:安徽
等 级:论坛游侠
帖 子:152
专家分:107
注 册:2011-5-20
收藏
得分:0 
回复 2楼 pangding
数列都是负数这种情况是存在的,只是一个普通情况,不知道还有什么特殊的情况没有考虑进去,还是它的测试数据有问题,这个题看着水,通过的人却很少,提交绝大多数都是wa,无语了都,那个oj也做得比较水,讨论跟oj居然不在一起~~~

Sharp your mind!
2012-07-26 09:24
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
数列都是负数的情况你能过吗?我还以为你这个程序会输出 0 呢。
2012-07-26 15:35
lianjiecuowu
Rank: 3Rank: 3
来 自:安徽
等 级:论坛游侠
帖 子:152
专家分:107
注 册:2011-5-20
收藏
得分:0 
回复 4楼 pangding
都是负数的情况输出就是0啊,我用dev和vc试过了都

Sharp your mind!
2012-07-26 22:37
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
-1 -2 -3 的最大连续子段和应该是 -1 吧。也许是我审题有误,反正这个你自己再研究研究吧。
2012-07-27 01:10
快速回复:acm大神帮忙看看,偶遇一道自认为的水题,短短的十几行代码,去总是wa ...
数据加载中...
 
   



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

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