#C. 「KDOI-05」简单的序列问题

    传统题 2000ms 512MiB

「KDOI-05」简单的序列问题

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

给出一个长度为 nn 的序列 aa。定义其前缀和数组 bi=j=1iajb_i=\sum_{j=1}^ia_j。定义其权值 S=i=1n(bimod2)S=\sum_{i=1}^n(b_i\bmod 2)

你可以对序列 aa 进行若干次如下操作:

  • 交换 ai,aja_i,a_j,花费 ci+cjc_i+c_j 元,其中 cc 为给定序列;

对于 i=0ni=0\sim n,求使得 S=iS=i 的最少钱数。如果不可能,输出 1-1

输入格式

本题包含多组测试数据。

第一行一个正整数 TT,表示测试数据组数。

对于每组测试数据:

第一行一个正整数 nn,表示序列长度。

第二行 nn 个正整数,表示序列 aa

第三行 nn 个正整数,表示序列 cc

输出格式

对于每组测试数据:

一行,n+1n+1 个整数,第 ii 个表示 S=i1S=i-1 的最少钱数。如果不可能,输出 1-1

样例

3
3
1 2 3
1 1 1
5
1 2 3 4 5
2 5 3 6 4
10
1 8 3 5 2 6 3 4 6 2
3 2 7 1 8 2 5 8 3 1
-1 2 0 -1
-1 -1 7 0 9 -1
-1 -1 5 3 4 0 7 8 6 -1 -1

样例解释

对于第一组数据,初始 i=1n(bimod2)=2\sum_{i=1}^n(b_i\bmod 2)=2,故使 S=2S=2 最少要花 00 元。

交换 a1,a2a_1,a_2 即可使 i=1n(bimod2)=1\sum_{i=1}^n(b_i\bmod 2)=1,故使 S=1S=1 可以花费 22 元。可以证明这是最优解。

可以证明不存在交换方案使得 S=0S=0S=3S=3

数据范围

本题采用捆绑测试。

子任务编号 分值 nn\leq n\sum n\leq 特殊性质
11 1010 55 5050
22 500500 aa 中至多有 33 个奇数
33 1515 3030 150150
44 2525 100100 500500
55 1010 500500 ci=1c_i=1
66 3030

对于 100%100\% 的数据:1n,n5001\leq n,\sum n\leq5001ai1091\leq a_i\leq10^91ci1061\leq c_i\leq10^61T5001\leq T\leq500

【MX-X1】梦熊周赛 · 未来组 1 &「KDOI」Round 5

未参加
状态
已结束
规则
IOI
题目
6
开始于
2024-7-7 14:00
结束于
2024-7-7 18:30
持续时间
4.5 小时
主持人
参赛人数
285