NYOJ 745 蚂蚁问题(两)
2024-10-13 18:35:08
蚂蚁的难题(二)
时间限制: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;
}
版权声明:本文博客原创文章。博客,未经同意,不得转载。
最新文章
- log4j配置说明
- Snmp协议应用-扫描局域网内打印机
- 64位系统上使用PLSQL Dervloper解决方案
- POJ-1475-Pushing Boxes(BFS)
- JavaScript - 获取高度
- DWZ (JUI) 教程(二):处理信息回馈的通用规范
- hdu1565+hdu1569(最大点权独立集)
- 【SQL Server性能优化】SQL Server 2008该表压缩
- [推荐]ORACLE PL/SQL编程之五:异常错误处理(知已知彼、百战不殆)
- Spring+SpringMVC+MyBatis深入学习及搭建(十二)——SpringMVC入门程序(一)
- [C#] 如何截取完整的网页图片
- Docker最佳实践-部署LNMP环境
- 使用item来封装数据:
- windows下的pycharm配置 linux环境
- webdriver 启动chrome时加载配置
- Vue知识点(面试常见点)
- FFmpeg Basics学习笔记(2)
- [k8s]简单启动一个k8s集群
- Oracle存储——逻辑结构
- PHPExcel导出导入
热门文章
- [非官方]ArcGIS10.2 for Desktop扩展工具包——XTools Pro
- poj3259(spfa判负环)
- 让window命令行支持自己主动补全[相似Linux的Tab键]
- 【译】ASP.NET MVC 5 教程 - 7:Edit方法和Edit视图详解
- Ajax动态载入xml文件内容
- 【SSH 基础】浅谈Hibernate关系映射(4)
- Windows phone 8 学习笔记(9) 集成
- iOS 多线程开发之OperationQueue(二)NSOperation VS GCD
- poj2761(treap入门)
- ecshop购物流程中去掉email邮箱