蚂蚁的难题(二)

时间限制:1000 ms  |  内存限制:65535 KB
难度:3

描述

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

已知有n种食材需要搬走,这些食材从1到n依次排成了一个圈。小蚂蚁对每种食材都有一个喜爱程度值Vi,当然,如果Vi小于0的时候,表示蚂蚁讨厌这种食材。因为马上就要下雨了,所以蚂蚁只能搬一次,但是能够搬走连续一段的食材。时间紧急,你快帮帮小蚂蚁吧,让它搬走的食材喜爱值和最大。

输入
有多组测试数据(以EOF结尾)。
每组数据有两行,第一行有一个n,表示有n种食材排成了一个圈。(1 <= n<= 50000)
第二行分别有n个数,代表蚂蚁对第n种食材的喜爱值Vi。(-10^9 <= Vi <= 10^9)
输出
输出小蚂蚁能够搬走的食材的喜爱值总和的最大。
样例输入
3
3 -1 2
5
-8 5 -1 3 -9
样例输出
5
7
来源
蚂蚁系列
上传者
ACM_李如兵
代码:
//环形的最大子序列。求一个首尾不连接的最大子序列和首尾不连接的最小子序列
//那么首尾连接的最大子序列=sum-首尾不连接的最小子序列,最后输出首尾连接
//和首尾不连接最大子序列中大的那个;
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
typedef long long ll;
const int inf=0x7fffffff;
int n,x;
ll maxn,minn;
int main()
{while(scanf("%d",&n)==1){maxn=0;minn=0;ll f1=0,f2=0,sum=0;while(n--){scanf("%d",&x);sum+=x;if(f1>=0) f1+=x;else f1=x;maxn=max(maxn,f1);if(f2<=0) f2+=x;else f2=x;minn=min(minn,f2);}printf("%lld\n",max(maxn,sum-minn));}return 0;
}

转载于:https://www.cnblogs.com/--ZHIYUAN/p/6723897.html

NYOJ 745 dp相关推荐

  1. NYOJ 745 蚂蚁问题(两)

    蚂蚁的难题(二) 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描写叙述 下雨了,下雨了.蚂蚁搬家了. 已知有n种食材须要搬走,这些食材从1到n依次排成了一个圈.小蚂蚁对每种 ...

  2. NYOJ 745 蚂蚁的难题(二)

    蚂蚁的难题(二) 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述 下雨了,下雨了,蚂蚁搬家了. 已知有n种食材需要搬走,这些食材从1到n依次排成了一个圈.小蚂蚁对每种食材 ...

  3. nyoj 作业题 dp

    作业题 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描述 小白同学这学期有一门课程叫做<数值计算方法>,这是一门有效使用数字计算机求数学问题近似解的方法与过程, ...

  4. xynuoj 1919 三国志

    1919: 三国志 时间限制: 3 Sec  内存限制: 64 MB 提交: 33  解决: 11 题目描述 <三国志>是一款很经典的经营策略类游戏.我们的小白同学是这款游戏的忠实玩家.现 ...

  5. NYOJ 304 节能(DP)

    题目描述 Dr.Kong设计的机器人卡多越来越聪明.最近市政公司交给卡多一项任务,每天早晨5:00开始,它负责关掉ZK大道右侧上所有的路灯. 卡多每到早晨5:00准会在ZK大道上某盏路灯的旁边,然后他 ...

  6. NYOJ 469 擅长排列的小明 II (dp问题)

    地址:http://acm.nyist.net/JudgeOnline/problem.php?pid=469 思路:动态规划dp 题目分析: 由于第一个只能是1,则第二个数只能是2,3 当第二个数是 ...

  7. nyoj 720 项目安排(dp+二分优化)

    项目安排 时间限制:3000 ms  |  内存限制:65535 KB 难度:4 描述 小明每天都在开源社区上做项目,假设每天他都有很多项目可以选,其中每个项目都有一个开始时间和截止时间,假设做完每个 ...

  8. nyoj 1216 整理图书(dp)

    整理图书 时间限制:3000 ms  |  内存限制:65535 KB 难度:5 描述 小明是图书鹳狸猿,他有很多很多的书堆在了一起摆在了架子上,每摞书是横着放的,而且每摞书是订好的 是一个整体,不可 ...

  9. nyoj 61(双线程dp)

    题目描述: 在一个矩阵内找出两条从1,1到m,n的路径(一条从1,1 到 m,n 一条 从m,n到1,1),并且路径之上的权值之和最大. 解题思路:这道题目如果是想从(1,1)->(n,m),再 ...

最新文章

  1. java 反射获取父类的字段_java反射获取父类和子类字段值、赋值
  2. C语言:一个涉及指针函数返回值与printf乱码、内存堆栈的经典案例
  3. ssh架构之hibernate(一)简单使用hibernate完成CRUD
  4. 802.11h halow(Short Beacon, s1g beacon)
  5. Go worker并发模式
  6. android 线程池 怎么用,android中的线程池 怎么用
  7. [leetcode] 96. 不同的二叉搜索树 +[补充] 不同的二叉树,不同形态的二叉树的个数----catalan数
  8. mysql主从配置实例
  9. 总结篇——nginx代理服务器
  10. Servlet原理:
  11. 相位测试音频mp3_音频与相位的关系
  12. 微信小程序开发过程记录
  13. Ilasm.exe和Ildasm.exe的简单使用
  14. 京瓷4501i打印机扫描步骤_「硬件」如何使用打印机扫描文件传送到电脑本地?...
  15. Cityscapes数据集gtFine部分介绍
  16. Velodyne Lidar Inc.宣布与禾赛光电科技签订专利许可协议
  17. 群消息已读回执(这个diao),究竟是推还是拉?
  18. DAY16-T1342面试题 05.08 -2022-01-31-非自己作答
  19. 【重磅】聚焦券商终端业务,博睿数据发布新一代券商终端核心业务体验可观测平台
  20. slideUp()方法和slideDown()方法

热门文章

  1. 第十节(this关键字 static关键字)
  2. git repo使用心得
  3. python 冒泡排序 时间复杂度
  4. Centos 云服务器磁盘占用率90%以上的排查解决
  5. flutter FadeTransition实现透明度渐变动画
  6. js多线程的实现-Worker
  7. Numpy 通用函数
  8. 《信息安全系统设计基础》实验四报告
  9. HTML5 canvas绘制雪花飘落动画(需求分析、知识点、程序编写分布详解)
  10. PHP中fwrite与file_put_contents性能测试