BNUOJ29065鸣人的查克拉
鸣人的查克拉
- None
- Graph Theory
- 2-SAT
- Articulation/Bridge/Biconnected Component
- Cycles/Topological Sorting/Strongly Connected Component
- Shortest Path
- Bellman Ford
- Dijkstra/Floyd Warshall
- Euler Trail/Circuit
- Heavy-Light Decomposition
- Minimum Spanning Tree
- Stable Marriage Problem
- Trees
- Directed Minimum Spanning Tree
- Flow/Matching
- Graph Matching
- Bipartite Matching
- Hopcroft–Karp Bipartite Matching
- Weighted Bipartite Matching/Hungarian Algorithm
- Flow
- Max Flow/Min Cut
- Min Cost Max Flow
- DFS-like
- Backtracking with Pruning/Branch and Bound
- Basic Recursion
- IDA* Search
- Parsing/Grammar
- Breadth First Search/Depth First Search
- Advanced Search Techniques
- Binary Search/Bisection
- Ternary Search
- Geometry
- Basic Geometry
- Computational Geometry
- Convex Hull
- Pick's Theorem
- Game Theory
- Green Hackenbush/Colon Principle/Fusion Principle
- Nim
- Sprague-Grundy Number
- Matrix
- Gaussian Elimination
- Matrix Exponentiation
- Data Structures
- Basic Data Structures
- Binary Indexed Tree
- Binary Search Tree
- Hashing
- Orthogonal Range Search
- Range Minimum Query/Lowest Common Ancestor
- Segment Tree/Interval Tree
- Trie Tree
- Sorting
- Disjoint Set
- String
- Aho Corasick
- Knuth-Morris-Pratt
- Suffix Array/Suffix Tree
- Math
- Basic Math
- Big Integer Arithmetic
- Number Theory
- Chinese Remainder Theorem
- Extended Euclid
- Inclusion/Exclusion
- Modular Arithmetic
- Combinatorics
- Group Theory/Burnside's lemma
- Counting
- Probability/Expected Value
- Others
- Tricky
- Hardest
- Unusual
- Brute Force
- Implementation
- Constructive Algorithms
- Two Pointer
- Bitmask
- Beginner
- Discrete Logarithm/Shank's Baby-step Giant-step Algorithm
- Greedy
- Divide and Conquer
- Dynamic Programming
- Tag it!
《火影忍者》中,在忍者们使用忍术的时候,需要一定的查克拉(可以看成是一种体力值)。在战斗前,大家都希望提高自己的查克拉。
鸣人发明了一种忍术,可以在短时间内提高查克拉。
在使用忍术前,鸣人需要做一个仪式,这个仪式决定之后每个时刻的一个查克拉值。这些值的使用规则是:如果在某个时刻发动这个忍术,鸣人需要先消耗该时刻的查克拉值;在某个时候结束这个忍术,鸣人能获得该时刻的查克拉值(忍术必须先发动才能结束)。当然,如果某时刻鸣人具有的查克拉值少于该时刻的查克拉值,那么鸣人是不能发动该忍术的。
由于鸣人对这个忍术还不能很好地控制,所以他最多只能发动两次该忍术,并且两次忍术不能同时发动,也就是说必须结束一次忍术才能发动下一次(第一次结束时可以立即发动第二次)。
现在仪式已经做完了,鸣人知道了自己的查克拉的初始值,以及各个时刻的查克拉值,如果他最多可以发动两次该忍术(他也可以选择发动一次或者不发动),那么他最多能达到的查克拉值是多少?
Input
输入数据只有一组,第一行包括两个整数C(0<=C<=100,000)和N(N<=10,000),表示鸣人的初始查克拉值以及仪式决定的时刻的个数。
接下来有N行,第i行包含一个整数Ai (0<=ai<=100,000),表示第i个时刻的查克拉值。
Output
输出一个整数,表示鸣人在使用忍术后能到达的最大的查克拉值。
Sample Input
Sample Input1 10 5 1 2 3 2 5Sample Input2 10 2 11 13
Sample Output
Sample Output1 15Sample Output2 10
Source
Author
#include<stdio.h>
#define N 10100
int main()
{int C,n,a[N],dp[2][N],min,max,ans;scanf("%d%d",&C,&n);for(int i=0;i<n;i++)scanf("%d",&a[i]);min=a[0];dp[0][0]=0; ans=0;for(int i=1;i<n;i++)//从前往后,第i个位结束if(min<=C){if(min>a[i])min=a[i];dp[0][i]=a[i]-min;if(ans<dp[0][i])ans=dp[0][i];dp[0][i]=ans;}else{if(min>a[i])min=a[i];dp[0][i]=ans;}int sum=dp[0][n-1]+C;max=a[n-1]; dp[1][n-1]=0; ans=0;for(int i=n-2;i>0;i--)//从后往前,第i个位开始if(dp[0][i-1]+C>=a[i]){if(max<a[i])max=a[i];dp[1][i]=max-a[i];if(ans<dp[1][i])ans=dp[1][i];dp[1][i]=ans;if(sum<dp[0][i-1]+C+dp[1][i])sum=dp[0][i-1]+C+dp[1][i];}else{if(max<a[i])max=a[i];dp[1][i]=ans;if(sum<dp[0][i-1]+C+dp[1][i])sum=dp[0][i-1]+C+dp[1][i];}printf("%d\n",sum);
}
BNUOJ29065鸣人的查克拉相关推荐
- bnuoj 29065 鸣人的查克拉
鸣人的查克拉 Time Limit: 1000ms Memory Limit: 65536KB 64-bit integer IO format: %lld Java class name ...
- ssl1016 OJ8467-数的划分 鸣人的影分身【各种dp之8 7】
数的划分 Description 将整数n分成k份,且每份不能为空,任意两份不能相同(不考虑顺序). 例如:n=7,k=3 (6<n<=200,2<=k<=6),下面三种分法被 ...
- 鸣人的影分身(信息学奥赛一本通-T1303)
[题目描述] 在火影忍者的世界里,令敌人捉摸不透是非常关键的.我们的主角漩涡鸣人所拥有的一个招数--多重影分身之术--就是一个很好的例子. 影分身是由鸣人身体的查克拉能量制造的,使用的查克拉越多,制造 ...
- 1303:鸣人的影分身
[题目描述] 在火影忍者的世界里,令敌人捉摸不透是非常关键的.我们的主角漩涡鸣人所拥有的一个招数--多重影分身之术--就是一个很好的例子. 影分身是由鸣人身体的查克拉能量制造的,使用的查克拉越多,制造 ...
- 鸣人的影分身(动态规划)
题目描述: 在火影忍者的世界里,令敌人捉摸不透是非常关键的.我们的主角漩涡鸣人所拥有的一个招数--多重影分身之术--就是一个很好的例子. 影分身是由鸣人身体的查克拉能量制造的,使用的查克拉越多,制造出 ...
- 003:鸣人的影分身
003:鸣人的影分身 总时间限制: 1000ms 内存限制: 65536kB 描述 在火影忍者的世界里,令敌人捉摸不透是非常关键的.我们的主角漩涡鸣人所拥有的一个招数--多重影分身之术--就是一个很好 ...
- T29389 中忍考试:宁次VS鸣人-白眼!
题目背景 赛时答疑:https://www.luogu.org/discuss/show/47581 在进入中忍考试的最后阶段,鸣人进行了自己修炼,为的就是迎战"天才忍者"--日向 ...
- 机器人鸣人是哪一集_火影里的五个机器人,第一个比鸣人还厉害,机器丁次你都没见过...
火影虽然是一部讲述众多忍者们的热血故事,但是火影里的时代并不是和古代一样,里面的生活是和现在的我们一样,在动漫里的忍者也是住的高楼,随时打电话,生病了也要去医院,也会肚子饿,也要一天三顿饭.只是火影里 ...
- 机器人鸣人是哪一集_火影忍者:四个机器人,机器丁次,机械鸣人,你见过哪个...
众所周知,火影忍者陪伴了我们15年!15年间,它一直陪伴着我们的青春,陪伴着我们的热血.作为一部讲述忍者的热血动漫,他们在我们的记忆里,可是不可或缺的,优秀的作品自然有优秀的粉丝,身为粉丝,即使火影早 ...
最新文章
- 【深度学习】新的深度学习优化器探索(协同优化)
- HBase应用笔记:通过Java Api与HBase交互(转自 Taobao QA Team)
- 记某CMS漏洞getshell
- thinkphp模板常用的方法
- #Pragma Pack(n)与内存分配 pragma pack(push,1)与#pragma pack(1)的区别
- Xcode 12: building for iOS Simulator, but linking in object file built fo... for architecture arm64
- 【TSP】基于matlab遗传算法求解13城市旅行商问题【含Matlab源码 1255期】
- 《Java小游戏实现》:贪吃蛇
- IOMMU简述-上篇
- vs2010中svn使用教程_VS2010中使用ankhSVN | 学步园
- HBase 官方文档中文版
- 1024程序员节:心疼被段子手黑得最惨的他们
- python绘制聚类树状图
- Linux中etc目录etc是什么单词的缩写
- Adobe是什么软件?
- java画板中画直线_画图板(画直线)
- Unity VR学习:第一人称射击游戏(1)
- 使用 matplotlib绘制简单图形,保存图片的方法
- 骏马淘金~~网赚不走弯路
- vConsole:H5控制台调试工具
热门文章
- Win11控制面板快捷键 Win11打开控制面板的多种方法
- 怎么设置计算机显示列表格式,(怎样显示excel的文件后缀名)excle后缀格式怎么显示...
- A 大吉大利,今晚吃鸡--枪械篇
- Android适配全面屏/刘海屏
- 现代医院智能化系统方案及其难点探讨
- 《云计算》-MySqlXmind-一张图看懂MySql知识结构
- pip install时报错超时(pip._vendor.requests.packages.urllib3.exceptions.ReadTimeoutError: HTTPSConnec)解决方案
- Excel表格自动化办公(持续更新)
- android 系统 优化设置,优化设置 让你的Android手机快人一步
- 华为云sql工程师评测答题[青铜+白银]