#L4998. 「POI 2023/2024 R3」Bukmacher

「POI 2023/2024 R3」Bukmacher

题目描述

题目译自 XXII Olimpiada Informatyczna — II etap Trzy Wieże

Bajtocja 正饱受通货膨胀困扰,忧心忡忡的 Bajtazar 苦思如何保值资产。不幸的是,他被一则博彩广告吸引,决定投身赌注,押注足球比赛。

即将举行 nn 场足球比赛,每场必有胜负(无平局)。单个赌注需预测全部 nn 场比赛结果。若正确预测第 ii 场比赛,胜方为第一队则获利 aia_i 拜托拉,第二队则获利 bib_i 拜托拉。错误预测无收益。赌注总收益为所有正确预测的收益之和。

Bajtazar 需从 zz 个赌注中选择一个。第 ii 个赌注包含预测序列 pip_i(长度 nn)和价格 kik_i 拜托拉,其中 pi,jp_{i,j}00 表示第 jj 场比赛预测第一队胜,为 11 表示第二队胜。赌注净收益为总收益减去价格。

Bajtazar 向你提供了所有赌注信息,并提出 qq 个问题。第 ii 个问题给出一个比赛结果序列 wiw_i,其中 wi,jw_{i,j}00 表示第 jj 场比赛第一队胜,为 11 表示第二队胜。你的任务是计算在 wiw_i 结果下,选择任一赌注可获得的最大净收益,以及达成此收益的赌注数量。

输入格式

第一行包含一个整数 nn (1n201 \leq n \leq 20),表示比赛场数。

第二行包含 nn 个整数 a1,a2,,ana_1, a_2, \ldots, a_n (0ai1090 \leq a_i \leq 10^9),表示第一队胜的收益。

第三行包含 nn 个整数 b1,b2,,bnb_1, b_2, \ldots, b_n (0bi1090 \leq b_i \leq 10^9),表示第二队胜的收益。

第四行包含一个整数 zz (1z1061 \leq z \leq 10^6),表示赌注数量。

接下来的 zz 行,每行描述第 ii 个赌注:一个长度 nn0101 序列 pip_i(无空格),后跟整数 kik_i (0ki1090 \leq k_i \leq 10^9)。

下一行包含一个整数 qq (1q1061 \leq q \leq 10^6),表示问题数量。

接下来的 qq 行,每行包含一个长度 nn0011 序列 wiw_i(无空格),描述第 ii 个问题的比赛结果。

输出格式

输出 qq 行,第 ii 行包含两个整数:第一个为在 wiw_i 结果下任一赌注可获得的最大净收益,第二个为达成此收益的赌注数量。

样例

输入:

3
1 3 5
4 2 5
5
000 5
010 2
101 1
000 8
011 3
3
000
011
100

输出:

4 2
5 1
6 1

解释: 给定 a1=1a_1=1, a2=3a_2=3, a3=5a_3=5b1=4b_1=4, b2=2b_2=2, b3=5b_3=5,赌注预测序列为 p1=000p_1=000, p2=010p_2=010, p3=101p_3=101, p4=000p_4=000, p5=011p_5=011,价格为 k1=5k_1=5, k2=2k_2=2, k3=1k_3=1, k4=8k_4=8, k5=3k_5=3

  • 问题 1:w1=000w_1=000,各赌注净收益:

    • 赌注 1:a1+a2+a3k1=4a_1 + a_2 + a_3 - k_1 = 4
    • 赌注 2:a1+a3k2=4a_1 + a_3 - k_2 = 4
    • 赌注 3:a2k3=2a_2 - k_3 = 2
    • 赌注 4:a1+a2+a3k4=1a_1 + a_2 + a_3 - k_4 = 1
    • 赌注 5:a1k5=2a_1 - k_5 = -2 最大净收益 44,由赌注 1 和 2 达成,数量为 22
  • 问题 2:w2=011w_2=011,赌注 5 净收益 a1+b2+b3k5=5a_1 + b_2 + b_3 - k_5 = 5 为最大,数量为 11

  • 问题 3:w3=100w_3=100,赌注 3 净收益 b1+a2k3=6b_1 + a_2 - k_3 = 6 为最大,数量为 11

附加样例

  • n=20n=20, ai=1a_i=1, bi=2b_i=2, z=q=1000z=q=1000, ki=ik_i=ipip_iwiw_i 为从 00000\ldots0 开始的字典序序列。
  • n=10n=10, ai=bi=ia_i=b_i=i, z=q=106z=q=10^6, ki=23k_i=23pip_iwiw_i 为从 00000\ldots0 开始的循环字典序序列。
  • n=17n=17, ai=bi=109a_i=b_i=10^9, z=q=105z=q=10^5, ki=0k_i=0pip_iwiw_i 为从 11111\ldots1 开始的递减字典序序列。
  • n=20n=20, ai=bi=i1a_i=b_i=i-1, z=q=106z=q=10^6, ki=109ik_i=10^9-ipip_iwiw_i 为从 00000\ldots0 开始的字典序序列。

数据范围与提示

详细子任务附加限制及分值如下表所示。

子任务编号 附加限制 分值
1 z,q1000z, q \leq 1000 10
2 n10n \leq 10
3 n17n \leq 17, z,q100000z, q \leq 100000 40
4 无附加限制

若程序仅正确输出每对结果的第一个值(最大净收益),且第二个值在 3232 位有符号整数范围内(int),可获测试 50%50\% 分数。