CF1401B Ternary Sequence

题目描述

给定两个序列 $a_1, a_2, \dots, a_n$ 和 $b_1, b_2, \dots, b_n$,每个序列中的元素都是 $0$、$1$ 或 $2$。序列 $a$ 中 $0$、$1$、$2$ 的个数分别为 $x_1$、$y_1$、$z_1$,序列 $b$ 中 $0$、$1$、$2$ 的个数分别为 $x_2$、$y_2$、$z_2$。 你可以任意重新排列序列 $a$ 和 $b$ 的元素。之后,定义序列 $c$ 如下: $$ c_i = \begin{cases} a_i b_i & \text{如果 } a_i > b_i \\ 0 & \text{如果 } a_i = b_i \\ - a_i b_i & \text{如果 } a_i < b_i \end{cases} $$ 你希望使 $\sum_{i=1}^n c_i$(即序列 $c$ 所有元素之和)尽可能大。请问最大可能的和是多少?

输入格式

第一行包含一个整数 $t$($1 \le t \le 10^4$),表示测试用例的数量。 每个测试用例包含两行。每个测试用例的第一行包含三个整数 $x_1, y_1, z_1$($0 \le x_1, y_1, z_1 \le 10^8$),分别表示序列 $a$ 中 $0$、$1$、$2$ 的个数。 每个测试用例的第二行也包含三个整数 $x_2, y_2, z_2$($0 \le x_2, y_2, z_2 \le 10^8$,且 $x_1 + y_1 + z_1 = x_2 + y_2 + z_2 > 0$),分别表示序列 $b$ 中 $0$、$1$、$2$ 的个数。

输出格式

对于每个测试用例,输出一个整数,表示序列 $c$ 的最大可能和。

说明/提示

在第一个样例中,一种最优方案为: $a = \{2, 0, 1, 1, 0, 2, 1\}$ $b = \{1, 0, 1, 0, 2, 1, 0\}$ $c = \{2, 0, 0, 0, 0, 2, 0\}$ 在第二个样例中,一种最优方案为: $a = \{0, 2, 0, 0, 0\}$ $b = \{1, 1, 0, 1, 0\}$ $c = \{0, 2, 0, 0, 0\}$ 在第三个样例中,唯一可能的方案为: $a = \{2\}$ $b = \{2\}$ $c = \{0\}$ 由 ChatGPT 4.1 翻译