首页
社区
课程
招聘
[旧帖] [求助]解 ACM HDU 第 1003 题 哪里不对? 0.00雪花
发表于: 2011-2-25 12:07 838

[旧帖] [求助]解 ACM HDU 第 1003 题 哪里不对? 0.00雪花

2011-2-25 12:07
838
ACM HDU 第 1003 题(http://acm.hdu.edu.cn/showproblem.php?pid=1003) 我的解答 如下 为什么提交时错?
我测试时 正确呀,不就是求最大子序列吗???
没用 动态规划 ,我这个算法哪里出了错??
#include <stdio.h>

int main()
{
 int a[100001],t,n,i,j,sum,k;
 int max,begin,end;
 int indexB,indexE;
 
 scanf("%d",&t);
 for(i = 1; i <= t; i++)
 {
  fflush(stdin);
  scanf("%d",&n);
  for(j = 1 ; j <= n ; j++)
   scanf("%d",&a[j]);
  
  max = a[1] ;
  indexE = indexB = 1 ;
  for(j = 1 ; j <= n ; j++)
  {
   begin = j;
   for(end = begin ; end <= n ; end++)
   {
    sum = 0;
    for(k = begin ; k <= end ; k++)
     sum += a[k] ;
    if(sum > max) 
    { 
     max = sum ;
     indexB = begin ;
     indexE = end ;
    }
   } 
  }
  printf("Case %d:\n",i);
  printf("%d %d %d\n",max,indexB,indexE);
  if( i < t) printf("\n");
 }
 return 0 ;
}

[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 233
活跃值: (285)
能力值: ( LV12,RANK:270 )
在线值:
发帖
回帖
粉丝
2
ACM中不能使用fflush(stdin);等待代码,因为测评通过重定向到文件来进行的,清空缓冲区会造成后面所有输入均被清空,自然会出错。
2011-2-25 12:12
0
雪    币: 678
活跃值: (101)
能力值: ( LV2,RANK:150 )
在线值:
发帖
回帖
粉丝
3
有可能会得到TLE,一般要用DP来做的,去看看FAQ那里,你就明白怎么提交的了。
2011-2-25 12:30
0
雪    币: 0
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
xie xie 楼上两位~~~
fflush 的确不能用

这个算法 太费时 果真 TLE
2011-2-25 14:33
0
游客
登录 | 注册 方可回帖
返回
//