A7030 | [GESP202312 七级] 纸牌游戏
来源2023
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
你和小杨在玩一个纸牌游戏。
你和小杨各有 $3$ 张牌,分别是 $0、1、2$。你们要进行 $N$ 轮游戏,每轮游戏双方都要出一张牌,并按 $1$ 战胜 $0$,$2$ 战胜 $1$,$0$ 战胜 $2$ 的规则决出胜负。第 $i$ 轮的胜者可以获得 $2a_i$ 分,败者不得分,如果双方出牌相同,则算平局,二人都可获得 $a_i$ 分 $(i=1,2,...,N)$。玩了一会后,你们觉得这样太过于单调,于是双方给自己制定了不同的新规则。小杨会在整局游戏开始前确定自己全部 $n$ 轮的出牌,并将他的全部计划告诉你:而你从第 $2$ 轮开始,要么继续出上一轮出的牌,要么记一次“换牌”。游戏结束时,你换了 $t$ 次牌,就要额外扣 $b1 + ... + bt$ 分。
请计算出你最多能获得多少分。
你和小杨各有 $3$ 张牌,分别是 $0、1、2$。你们要进行 $N$ 轮游戏,每轮游戏双方都要出一张牌,并按 $1$ 战胜 $0$,$2$ 战胜 $1$,$0$ 战胜 $2$ 的规则决出胜负。第 $i$ 轮的胜者可以获得 $2a_i$ 分,败者不得分,如果双方出牌相同,则算平局,二人都可获得 $a_i$ 分 $(i=1,2,...,N)$。玩了一会后,你们觉得这样太过于单调,于是双方给自己制定了不同的新规则。小杨会在整局游戏开始前确定自己全部 $n$ 轮的出牌,并将他的全部计划告诉你:而你从第 $2$ 轮开始,要么继续出上一轮出的牌,要么记一次“换牌”。游戏结束时,你换了 $t$ 次牌,就要额外扣 $b1 + ... + bt$ 分。
请计算出你最多能获得多少分。
输入格式
第一行一个整数 $N$,表示游戏轮数。
第二行 $N$ 个用单个空格隔开的非负整数 $a_1,...,a_N$,意义见题目描述。
第三行 $N-1$ 个用单个空格隔开的非负整数 $b_1,...,b_{N-1}$,表示换牌的罚分,具体含义见题目描述。由于游戏进行 $N$ 轮,所以你至多可以换 $N-1$ 次牌。
第四行 $N$ 个用单个空格隔开的整数 $c_1,...,c_N$,依次表示小杨从第 $1$ 轮至第 $N$ 轮出的牌。保证 $c_i \in {0, 1, 2}$
第二行 $N$ 个用单个空格隔开的非负整数 $a_1,...,a_N$,意义见题目描述。
第三行 $N-1$ 个用单个空格隔开的非负整数 $b_1,...,b_{N-1}$,表示换牌的罚分,具体含义见题目描述。由于游戏进行 $N$ 轮,所以你至多可以换 $N-1$ 次牌。
第四行 $N$ 个用单个空格隔开的整数 $c_1,...,c_N$,依次表示小杨从第 $1$ 轮至第 $N$ 轮出的牌。保证 $c_i \in {0, 1, 2}$
输出格式
一行一个整数,表示你最多获得的分数。
输入输出样例
输入 #1
4 1 2 10 100 1 100 1 1 1 2 0
输出 #1
219
输入 #2
6 3 7 2 8 9 4 1 3 9 27 81 0 1 2 1 2 0
输出 #2
56
在常规程序中,输入、输出时提供提示是好习惯。但在本场考试中,由于系统限定,请不要在输入、输出中附带任何提示信息。
样例解释 $1$
你可以第 $1$ 轮出 $0$,并在第 $2,3$ 轮保持不变,如此输掉第 $1,2$ 轮,但在第 $3$ 轮中取胜,获得 $2 \times 10 = 20$ 分;随后,你可以在第 $4$ 轮中以扣 $1$ 分为代价改出 $1$ 并在第 $4$ 轮中取得胜利,获得 $2\ 100 = 200$ 分。如此,你可以获得最高的总分 $20 +200-1=219$
数据规模
对于 $30\%$ 的测试点,保证 $N ≤ 15$。
对于 $60\%$ 的测试点,保证 $N ≤ 100$。
对于所有测试点,保证 $N ≤ 1,000$; 保证 $0 ≤ a_i,bi_ ≤ 10^6$
样例解释 $1$
你可以第 $1$ 轮出 $0$,并在第 $2,3$ 轮保持不变,如此输掉第 $1,2$ 轮,但在第 $3$ 轮中取胜,获得 $2 \times 10 = 20$ 分;随后,你可以在第 $4$ 轮中以扣 $1$ 分为代价改出 $1$ 并在第 $4$ 轮中取得胜利,获得 $2\ 100 = 200$ 分。如此,你可以获得最高的总分 $20 +200-1=219$
数据规模
对于 $30\%$ 的测试点,保证 $N ≤ 15$。
对于 $60\%$ 的测试点,保证 $N ≤ 100$。
对于所有测试点,保证 $N ≤ 1,000$; 保证 $0 ≤ a_i,bi_ ≤ 10^6$
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?