51nod 1065 最小正子段和

题目链接:51nod 1065 最小正子段和

房教说用前缀和做,然后看了别人博客懂了后就感觉,这个真有意思...

 1 #include<cstdio>
 2 #include<cstring>
 3 #include<algorithm>
 4 using namespace std;
 5 const int N = 50001;
 6 const int inf  = 0x3f3f3f3f;
 7 pair<long long, int> sum[N];
 8 int a[N];
 9 int n;
10 int main(){
11     int i, j;
12     long long ans = inf;
13     scanf("%d", &n);
14     sum[0] = make_pair(0,0);
15     for(i = 1; i <= n; ++i){
16         scanf("%d", &a[i]);
17         sum[i].first = a[i] + sum[i-1].first;
18         sum[i].second = i;
19     }
20     sort(sum+1, sum+1+n);
21     for(i = 1; i <= n; ++i){
22         if(sum[i].first > 0)
23             ans = min(ans, sum[i].first);
24         if(sum[i].second > sum[i-1].second && sum[i].first > sum[i-1].first)
25             ans = min(ans, sum[i].first - sum[i-1].first);
26     }
27     printf("%lld\n", ans);
28     return 0;
29 }
View Code

 

posted @ 2016-10-05 19:03  GraceSkyer  阅读(262)  评论(0编辑  收藏  举报

~~~~~~ACM大牛语录,激励一下~~~~~~

为了世界的和平,为了女生的安全,我拼命做题,做题,做题!

用最短的时间,刷最多的题!

给我一滴泪,我就看到了你全部的海洋!

seize the hour, seize the day.

人生难免有无奈,幸福走远了,或是感叹幸福来迟了.其实我一直相信,无论手中的幸福是多么微不足道的感觉,我会把握住那每一分,每一秒,当幸福依旧像那百鸟般飞逝,终究无法掌握时,我会感谢它,曾经降临过!

A自己的题,让别人郁闷去吧

WA肠中过,AC心中留 TLE耳边过,AC特别牛

天然的悲苦和伤逝,过去有过,以后还会有

^*^一步一步往上爬^*^

AC就像练级,比赛就像PK. 练级不如PK好玩

其实,世上本没有ACM,AC的人多了,也便有了!

AC无止尽~ Seek you forever~

找呀找呀找水题,找到一个AC一个呀!

AC是检验程序的唯一标准。

真的猛士,敢于直面惨淡的人生,敢于正视淋漓的鲜血……