luogu#B3938. [语言月赛 202402] 陨石

[语言月赛 202402] 陨石

题目背景

卷王来到了他的好朋友 bj12z_jiasiyuan 的农场,打算在那里过上一晚。但是在看新闻时,他们获得了一个不幸的消息,一场陨石雨就快要降临了……

题目描述

bj12z_jiasiyuan 的农场里有 nn 间牛棚,编号为 11nn。第 ii 间牛棚的防御值为 aia_i

陨石雨将会tt 秒后来临。在陨石雨来临的时候,会有 mm 块陨石撞击牛棚,第 ii 块陨石会撞击到第 xix_i 间牛棚。当一块陨石撞击一间牛棚时,牛棚的防御值会减去 22。而当一间牛棚的防御值 0\leq 0 时,牛棚会被破坏。

bj12z_jiasiyuan 有很多补给,每个补给可以给一间牛棚增加 11 点防御值。幸运的是,卷王可以从一间牛棚瞬移到另一间牛棚(瞬移不需花费任何时间),用补给给牛棚增加防御值。每次补给需要 11 秒的时间。

卷王只有 tt 秒种的时间可以出去补给,他希望让被破坏的牛棚越少越好。请你输出最优策略下被保护的牛棚的数量。

输入格式

本题单个测试点内包含多组测试数据。

第一行一个整数 TT,代表测试数据组数。接下来 TT 组数据,每组数据共三行。

第一行三个整数 n,t,mn,t,m,分别表示牛棚的数量,卷王补给的时间和陨石的数量。
接下来一行 nn 个整数 a1,a2,,ana_1, a_2, \cdots, a_n,表示第 ii 间牛棚的防御值。
最后一行 mm 个整数 x1,x2,,xmx_1, x_2, \cdots, x_m,表示第 ii 块陨石将会撞击第 xix_i 间牛棚。

输出格式

输出 TT 行,每行一个整数,分别表示每组测试数据中最优策略下被保护的牛棚的数量。

1
4 3 5
2 1 3 5
3 1 2 4 3

3

4
3 4 2
5 2 4
2 1
3 2 20
6 6 6
1 3 3 1 2 1 1 1 2 2 2 1 1 3 1 2 2 3 3 1
2 0 2
1 2
1 1
5 3 12
4 5797 2 1 1
5 4 3 2 4 4 5 5 5 5 1 1

3
0
1
3

提示

样例 1 解释

一种最优的补给方法是补给 11 号牛棚 11 点防御值,补给 22 号牛棚 22 点防御值。

在这种情况下,各牛棚防御值变化如下,其中蓝色数字代表初始防御值,绿色数字代表补给,红色数字代表陨石撞击:

  • 11 号:${\color{blue} 2} + {\color{green}1} - {\color{red}2} = 1$;
  • 22 号:${\color{blue} 1} + {\color{green}2} - {\color{red}2} = 1$;
  • 33 号:${\color{blue} 3} - {\color{red}2} - {\color{red}2} = -1$;
  • 44 号:52=3{\color{blue} 5} - {\color{red}2} = 3

有且仅有 33 号牛棚被破坏,可保护三个牛棚。

数据规模与约定

对于 100%100\% 的数据,1xin5×1031\leq x_i \leq n\leq 5 \times10^31m1061\leq m\leq 10^60t1060\leq t\leq 10^61ai1061\leq a_i \leq 10^61T5×1031 \leq T \leq 5 \times 10^3
保证单个测试点内所有测试数据 nn 的总和不超过 5×1045 \times 10^4,所有测试数据 mm 的总和不超过 3×1063 \times 10^6

测试点编号 特殊限制
1,21, 2 T=1T = 1n=1n = 1
3,43, 4 T=1T = 1,每间牛棚恰好被击中一次
55 T=1T = 11xin1001\leq x_i \leq n \leq 100
66 T=1T = 1
77 1xin1001\leq x_i \leq n \leq 100
8108 \sim 10 无特殊限制