#HK4754. 「POI 2024/2025 R1」Sprawiedliwy podział

「POI 2024/2025 R1」Sprawiedliwy podział

题目描述

题目译自 XXXII Olimpiada Informatyczna – I etap Sprawiedliwy podział

Bajtyna 和 Bitek 需要分配他们拥有的 nn 件物品。对于每件物品,我们知道其对 Bajtyna 和 Bitek 的价值;这两个价值可以相同,也可以不同。我们希望将每件物品分配给其中一人,且没有人对另一人感到嫉妒,具体定义如下。

如果 Bitek 分到的所有物品对 Bitek 的总价值严格小于 Bajtyna 分到的所有物品对 Bitek 的总价值减去其中任意一个(特别地,价值最小的一个),则 Bitek 会嫉妒 Bajtyna。例如,考虑四件物品,对 Bitek 的价值分别为 4,3,4,84, 3, 4, 8。如果将前两个物品分配给 Bitek,Bitek 会嫉妒 Bajtyna,因为 4+3<84+3 < 8。如果将最后一个物品分配给 Bitek,他不会嫉妒 Bajtyna,因为 84+48 \geq 4+4

类似地,我们定义 Bajtyna 何时会嫉妒 Bitek,对于这种情况我们计算的是 Bajtyna 分到的所有物品的总价值。

请将所有物品分配给 Bajtyna 和 Bitek,使得没有人会嫉妒对方。

输入格式

输入的第一行包含一个整数 nn (1n5105)(1 \leq n \leq 5\cdot 10^5),表示物品的数量。第二行包含 nn 个整数 a1,a2,,ana_{1}, a_{2}, \ldots, a_{n} (1ai109)(1 \leq a_{i} \leq 10^9),表示每件物品对 Bajtyna 的价值。第三行包含 nn 个整数 b1,b2,,bnb_{1}, b_{2}, \ldots, b_{n} (1bi109)(1 \leq b_{i} \leq 10^9),表示每件物品对 Bitek 的价值。

输出格式

在输出的第一行中,输出 nn 个用空格分隔的整数,描述满足条件的物品分配方案。第 ii 个数字应为 00,表示第 ii 件物品分配给 Bajtyna,或为 11,表示分配给 Bitek。可以假设总存在满足题目要求的分配方案。

4
10 5 9 6
4 6 8 4
1 0 0 1

将第二和第三件物品分配给 Bajtyna,其他分配给 Bitek。Bajtyna 不会嫉妒 Bitek,因为 5+9105+9 \geq 105+965+9 \geq 6。Bitek 不会嫉妒 Bajtyna,因为 4+464+4 \geq 64+484+4 \geq 8

样例 2

见附加文件下 [spr1ocen.in](file:spr1ocen.in) 和 [spr1ocen.out](file:spr1ocen.out)。

该样例满足 n=6,ai=7i,bi=in=6, a_{i}=7-i, b_{i}=i;答案为 0,0,0,1,1,10,0,0,1,1,1

样例 3

见附加文件下 [spr2ocen.in](file:spr2ocen.in) 和 [spr2ocen.out](file:spr2ocen.out)。

该样例满足 n=12,ai=1,bi=2n=12, a_{i}=1, b_{i}=2;答案为 1,1,1,1,1,1,0,0,0,0,0,01,1,1,1,1,1,0,0,0,0,0,0

样例 4

见附加文件下 [spr3ocen.in](file:spr3ocen.in) 和 [spr3ocen.out](file:spr3ocen.out)。

该样例满足 n=5105,ai=bi=109n=5\cdot 10^5, a_{i}=b_{i}=10^9;答案为 0,1,0,1,0,1,0,1,0,1,0,1, \ldots

数据范围与提示

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

子任务编号 附加限制 分值
11 n10n \leq 10 99
22 n20n \leq 20 1010
33 每个 ii 满足 ai=bia_{i}=b_{i} 4040
44 n1000n \leq 1000 1515
55 无附加限制 2626