2 qq 34805680 qq_34805680 于 2016.05.06 12:07 提问

帮找一下问什么wrong answer

Problem Description
Given a sequence a[1],a[2],a[3]......a[n], your job is to calculate the max sum of a sub-sequence. For example, given (6,-1,5,4,-7), the max sum in this sequence is 6 + (-1) + 5 + 4 = 14.

Input
The first line of the input contains an integer T(1<=T<=20) which means the number of test cases. Then T lines follow, each line starts with a number N(1<=N<=100000), then N integers followed(all the integers are between -1000 and 1000).

Output
For each test case, you should output two lines. The first line is "Case #:", # means the number of the test case. The second line contains three integers, the Max Sum in the sequence, the start position of the sub-sequence, the end position of the sub-sequence. If there are more than one result, output the first one. Output a blank line between two cases.

Sample Input
2
5 6 -1 5 4 -7
7 0 6 -1 1 -6 7 -5

Sample Output
Case 1:
14 1 4

Case 2:
7 1 6

#include
#include
using namespace std;

int a[100010];
int sum;

int main()
{
int n;
//the number of test cases.
cin>>n;
int i;
for(int val=1;val {
cin>>sum;
//the lines starts with a number N
//the N numbers of the line
for(i=0;i cin>>a[i];
int ncurstart=0,ncurend=0;
int start=0,end=0;
int ncursum=0;
int ngreatsum = -1001;
for(i=0;i {
ncursum+=a[i];
ncurend=i+1;
if(ncursum {
ncursum=0;
ncurstart=i+1;
ncurend=i+1;
}
if(ncursum>ngreatsum)
{
ngreatsum=ncursum;
start=ncurstart;
end=ncurend;
}

    }
    printf("Case %d:\n",val);
    printf("%d %d %d\n\n",ngreatsum,start+1,end);

}
return 0;

}

1个回答

devmiao
devmiao   Ds   Rxr 2016.05.07 06:50
已采纳
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
ACM 中wrong answer(WA)的一种处理办法 UVA10474 where is the marble
ACM 中wrong answer(WA)的一种处理办法 UVA10474 where is the marble
一道题Wrong Answer之后该何去何从?
敲代码手不稳是个大毛病,往往会让一份能AC的代码变成99.995%正确,失之毫厘谬以千里,最近十场个人赛很少有能一次AC的经历,仔细想想触发根本逻辑上的错误,大概都是跪在这些细节上: 1.输出格式,输入格式是否符合规范,有没有Case #?是否有多余空格输出?I64d or lld?输出浮点数尽量不要用cout。 2.i和j,n和m,l和r有没有写混了的。。(今晚检查了两小时的程序发现i
acm题为什么总是出现wrong answer。。。求大神救助
#include int main() {  char c[100];  char* p, *pm, *head;  int sh;    p = c;  pm = c;  head = c;    while(gets(c))  {   pm =c;   if(*p   {    sh = 1;   }   else   {    sh = 0;  
杭电OJ--Wrong Answer报错
这里有个大家会习惯性犯错的地方,就是省略了return 0;查看下,是否是这个低级错误,如果没有那就是代码问题了。
poj1001在测试他给的数据结果一模一样,但总是wrong answer
poj1001在测试他给的数据结果一模一样,但总是wrong answer,怎么破
为什么这题交上去显示wrong answer?
#include #include int main() {     unsigned int n,i,c; int j; while(scanf("%d",&n)&&n!=0) { j=sqrt(n); if(n!=1) { for(i=2;i { c=n%i; if(c==0)break; } if(c==0) printf("NO\n"); else p
wrong answer 原因
1.浮点型数据用double型,防止超出;2,double型输入输出用%lf;
北大ACM1006报WrongAnswer解决思路
在1002题之后,后面的1003到1005实在太过简单,所以就不单独发博文阐述了,有问题可以在评论下面回复。 我们详细讨论一下1006题,题目的大致意思大概是找一个公倍数的问题,也就是这三个数在什么时候有一个可以被整除的时间。除了p,e,i这三个参数,为了迷惑你题目还特地弄了一个起始时间,也就是d,事实上这个并没有什么卵用,唯一的作用只是让你在最后减去d,仅此而已。因此题目的关键就是找到这个日期
求助 一个很简单的ACM题 java代码 自己电脑上测都是正确的 但提交总是wrong answer 先谢谢了...
题意大致是,给出直角三角形a,b,c(c为斜边)中两个的值(都是正数),求值为-1的那个边。比如3 4 -1,就是求c的长度,输入0 0 0表结束,输出格式如下加粗部分,我自己测自己的运行结果都是正确的,不知为什么总是wa,求大神指点! Mathematics can be so easy when you have a computer. Consider the following...
POJ 1269 Intersecting Lines(判断直线相交)
题目地址:POJ 1269 直接套模板就可以了。。。实在不想自己写模板了。。。写的又臭又长。。。。不过这题需要注意的是要先判断是否有直线垂直X轴的情况。 代码如下: #include #include #include #include #include #include #include #include #include #include #include usi