[GESP202312 七级] 纸牌游戏

Luogu
IDLGP10111
Time1000ms
Memory512MB
DifficultyP3
动态规划 DP2023GESP
你和小杨在玩一个纸牌游戏。 你和小杨各有 $3$ 张牌,分别是 $0、1、2$。你们要进行 $N$ 轮游戏,每轮游戏双方都要出一张牌,并按 $1$ 战胜 $0$,$2$ 战胜 $1$,$0$ 战胜 $2$ 的规则决出胜负。第 $i$ 轮的胜者可以获得 $2 \times a_i$ 分,败者不得分,如果双方出牌相同,则算平局,二人都可获得 $a_i$ 分 $(i=1,2,\cdots,N)$。 玩了一会后,你们觉得这样太过于单调,于是双方给自己制定了不同的新规则。小杨会在整局游戏开始前确定自己全部 $n$ 轮的出牌,并将他的全部计划告诉你;而你从第 $2$ 轮开始,要么继续出上一轮出的牌,要么记一次“换牌”。游戏结束时,你换了 $t$ 次牌,就要额外扣 $b_1+\cdots+b_t$ 分。 请计算出你最多能获得多少分。 ## Input 第一行一个整数 $N$,表示游戏轮数。 第二行 $N$ 个用单个空格隔开的非负整数 $a_1,\cdots,a_N$,意义见题目描述。 第三行 $N-1$ 个用单个空格隔开的非负整数 $b_1,\cdots,b_{N-1}$,表示换牌的罚分,具体含义见题目描述。由于游戏进行 $N$ 轮,所以你至多可以换 $N-1$ 次牌。 第四行 $N$ 个用单个空格隔开的整数 $c_1,\cdots,c_N$,依次表示小杨从第 $1$ 轮至第 $N$ 轮出的牌。保证 $c _i\in{0,1,2}$。 ## Output 一行一个整数,表示你最多获得的分数。 [samples] ## Background 对应的选择、判断题:<https://ti.luogu.com.cn/problemset/1139> ## Note **样例解释 1** 你可以第 $1$ 轮出 $0$,并在第 $2,3$ 轮保持不变,如此输掉第 $1,2$ 轮,但在第 $3$ 轮中取胜,获得 $2×10=20$ 分; 随后,你可以在第 $4$ 轮中以扣 $1$ 分为代价改出 $1$ ,并在第 $4$ 轮中取得胜利,获得 $2×100=200$ 分。 如此,你可以获得最高的总分 $20+200-1=219$。 **数据范围** 对于 $30\%$ 的测试点,保证 $N\le15$。 对于 $60\%$ 的测试点,保证 $N\le100$。 对于所有测试点,保证 $N \le 1,000$;保证 $0 \le a_i,b_i \le 10^6$。
Samples
Input #1
4
1 2 10 100
1 100 1
1 1 2 0
Output #1
219
Input #2
6
3 7 2 8 9 4
1 3 9 27 81
0 1 2 1 2 0
Output #2
56
API Response (JSON)
{
  "problem": {
    "name": "[GESP202312 七级] 纸牌游戏",
    "description": {
      "content": "你和小杨在玩一个纸牌游戏。 你和小杨各有 $3$ 张牌,分别是 $0、1、2$。你们要进行 $N$ 轮游戏,每轮游戏双方都要出一张牌,并按 $1$ 战胜 $0$,$2$ 战胜 $1$,$0$ 战胜 $2$ 的规则决出胜负。第 $i$ 轮的胜者可以获得 $2 \\times a_i$ 分,败者不得分,如果双方出牌相同,则算平局,二人都可获得 $a_i$ 分 $(i=1,2,\\cdots,N)$。 ",
      "description_type": "Markdown"
    },
    "platform": "Luogu",
    "limit": {
      "time_limit": 1000,
      "memory_limit": 524288
    },
    "difficulty": {
      "LuoguStyle": "P3"
    },
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "LGP10111"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "你和小杨在玩一个纸牌游戏。\n\n你和小杨各有 $3$ 张牌,分别是 $0、1、2$。你们要进行 $N$ 轮游戏,每轮游戏双方都要出一张牌,并按 $1$ 战胜 $0$,$2$ 战胜 $1$,$0$ 战胜 $2$ 的规则决出胜负。第 $i$ 轮的胜者可以获得 $2 \\times a_i$ 分,败者不得分,如果双方出牌相同,则算平局,二人都可获得 $a_i$ 分 $(i=1,2,\\cdots,N)$。\n\n...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments