蚂蚁的难题(二)

时间限制:1000 ms  |  内存限制:65535 KB
难度:3
描写叙述

下雨了,下雨了。蚂蚁搬家了。

已知有n种食材须要搬走,这些食材从1到n依次排成了一个圈。小蚂蚁对每种食材都有一个喜爱程度值Vi,当然,假设Vi小于0的时候,表示蚂蚁讨厌这样的食材。由于立即就要下雨了。所以蚂蚁仅仅能搬一次,可是可以搬走连续一段的食材。时间紧急,你快帮帮小蚂蚁吧,让它搬走的食材喜爱值和最大。

输入
有多组測试数据(以EOF结尾)。

每组数据有两行。第一行有一个n,表示有n种食材排成了一个圈。

(2 <= n<= 50000)

第二行分别有n个数。代表蚂蚁对第n种食材的喜爱值Vi。(-10^9 <= Vi <= 10^9)

输出
输出小蚂蚁可以搬走的食材的喜爱值总和的最大。
例子输入
3
3 -1 2
5
-8 5 -1 3 -9
例子输出
5
7
AC码:
#include<stdio.h>
long long num[50005];
int main()
{
long long n,i,max,sum,t2,min,t1;
while(scanf("%lld",&n)!=EOF)
{
sum=0;
for(i=0;i<n;i++)
{
scanf("%lld",&num[i]);
sum+=num[i];
}
t1=max=num[0];
for(i=1;i<n;i++)
{
if(max<0)
max=0;
max+=num[i];
if(t1<max)
t1=max;
}
t2=min=num[0];
for(i=1;i<n;i++)
{
if(min>0)
min=0;
min+=num[i];
if(t2>min)
t2=min;
}
if(t1<sum-t2)
t1=sum-t2;
printf("%lld\n",t1);
}
return 0;
}

版权声明:本文博客原创文章。博客,未经同意,不得转载。

最新文章

  1. log4j配置说明
  2. Snmp协议应用-扫描局域网内打印机
  3. 64位系统上使用PLSQL Dervloper解决方案
  4. POJ-1475-Pushing Boxes(BFS)
  5. JavaScript - 获取高度
  6. DWZ (JUI) 教程(二):处理信息回馈的通用规范
  7. hdu1565+hdu1569(最大点权独立集)
  8. 【SQL Server性能优化】SQL Server 2008该表压缩
  9. [推荐]ORACLE PL/SQL编程之五:异常错误处理(知已知彼、百战不殆)
  10. Spring+SpringMVC+MyBatis深入学习及搭建(十二)——SpringMVC入门程序(一)
  11. [C#] 如何截取完整的网页图片
  12. Docker最佳实践-部署LNMP环境
  13. 使用item来封装数据:
  14. windows下的pycharm配置 linux环境
  15. webdriver 启动chrome时加载配置
  16. Vue知识点(面试常见点)
  17. FFmpeg Basics学习笔记(2)
  18. [k8s]简单启动一个k8s集群
  19. Oracle存储——逻辑结构
  20. PHPExcel导出导入

热门文章

  1. [非官方]ArcGIS10.2 for Desktop扩展工具包——XTools Pro
  2. poj3259(spfa判负环)
  3. 让window命令行支持自己主动补全[相似Linux的Tab键]
  4. 【译】ASP.NET MVC 5 教程 - 7:Edit方法和Edit视图详解
  5. Ajax动态载入xml文件内容
  6. 【SSH 基础】浅谈Hibernate关系映射(4)
  7. Windows phone 8 学习笔记(9) 集成
  8. iOS 多线程开发之OperationQueue(二)NSOperation VS GCD
  9. poj2761(treap入门)
  10. ecshop购物流程中去掉email邮箱