AT_dp_l.Deque
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
太郎君和次郎君进行如下游戏。
最初,给定一个数列 a=(a1,a2,…,aN)。两人轮流进行如下操作,直到 a 变为空。太郎君先手。
- 可以移除 a 的首元素或末元素。设移除的元素为 x,则执行操作的人获得 x 分。
游戏结束时,太郎君的总得分为 X,次郎君的总得分为 Y。太郎君希望最大化 X−Y,次郎君则希望最小化 X−Y。
假设两人都采取最优策略,求 X−Y 的值。
输入格式
输入以如下格式从标准输入读入。
N a1 a2 … aN
输出格式
假设两人都采取最优策略,输出 X−Y 的值。
输入输出样例
输入#1
4 10 80 90 30
输出#1
10
输入#2
3 10 100 10
输出#2
-80
输入#3
1 10
输出#3
10
输入#4
10 1000000000 1 1000000000 1 1000000000 1 1000000000 1 1000000000 1
输出#4
4999999995
输入#5
6 4 2 9 7 1 5
输出#5
2
说明/提示
限制条件
- 输入均为整数。
- 1≤N≤3000
- 1≤ai≤109
样例解释 1
两人采取最优策略时,操作过程如下。被操作的元素用粗体表示。
- 先手:(10, 80, 90, 30)→(10, 80, 90)
- 后手:(10, 80, 90)→(10, 80)
- 先手:(10, 80)→(10)
- 后手:(10)→()
此时,X=30+80=110,Y=90+10=100。
样例解释 2
两人采取最优策略时,操作过程例如如下。
- 先手:(10, 100, 10)→(100, 10)
- 后手:(100, 10)→(10)
- 先手:(10)→()
此时,X=10+10=20,Y=100。
样例解释 4
答案可能超出 32 位整数范围。
样例解释 5
两人采取最优策略时,操作过程例如如下。
- 先手:(4, 2, 9, 7, 1, 5)→(4, 2, 9, 7, 1)
- 后手:(4, 2, 9, 7, 1)→(2, 9, 7, 1)
- 先手:(2, 9, 7, 1)→(2, 9, 7)
- 后手:(2, 9, 7)→(2, 9)
- 先手:(2, 9)→(2)
- 后手:(2)→()
此时,X=5+1+9=15,Y=4+7+2=13。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?