动态规划
一直AC不了竟然是因为一厢情愿的多加了一个#!
printf("Case #%d:\n",count);
----------------------------------------------------
1 #include<stdio.h>
2 #include<stdlib.h>
3 int num[100000];
4 int dp[100000];
5
6 int main()
7 {
8 int times;
9 scanf("%d",×);
10 int length;
11 int count=1;
12 while(times--)
13 {
14
15 scanf("%d",&length);
16
17 int i=0;
18 for(i=0;i<length;i++)
19 scanf("%d",&num[i]);
20 dp[0]=num[0];
21 int dpmax=dp[0];
22 int begin=0,end=0,maxbegin=0,maxend=0;
23 for(i=1;i<length;i++)
24 {
25 if(dp[i-1]+num[i]>=num[i])
26 {
27 dp[i]=dp[i-1]+num[i];
28 end=i;
29 }
30 else
31 {
32 dp[i]=num[i];
33 begin=i;
34 end=i;
35 }
36 if(dp[i]>dpmax)
37 {
38 dpmax=dp[i];
39 maxbegin=begin;
40 maxend=end;
41 }
42 }
43 printf("Case %d:\n",count);
44 count++;
45 printf("%d %d %d\n",dpmax,maxbegin+1,maxend+1);
46 if(times>0)
47 printf("\n");
48 }
49 return 0;
50 }