CF798D Mike and distribution
题目描述
Mike 一直在思考社会不平等的严酷性。他对此十分着迷,以至于有时甚至会影响他解题。目前,Mike 有两个长度为 $n$ 的正整数序列 $A=[a_{1},a_{2},...,a_{n}]$ 和 $B=[b_{1},b_{2},...,b_{n}]$,他用这些序列向人们提出一些相当奇特的问题。
为了测试你发现生活中不平等现象的能力,他希望你能在原序列中找出一个“不公平”的子集。更具体地说,他希望你选出 $k$ 个数 $P=[p_{1},p_{2},...,p_{k}]$,使得 $1 \leq p_{i} \leq n$($1 \leq i \leq k$)且 $P$ 中的元素各不相同。序列 $P$ 表示你从两个序列中选出的元素的下标。他称这样的子集 $P$ 是“不公平”的,当且仅当满足以下两个条件:
- $2 \cdot (a_{p_1}+...+a_{p_k})$ 严格大于序列 $A$ 所有元素之和;
- $2 \cdot (b_{p_1}+...+b_{p_k})$ 严格大于序列 $B$ 所有元素之和;
另外,$k$ 必须小于等于 $\left\lfloor \frac{n}{2} \right\rfloor+1$,因为如果允许你选更多元素,找到 $P$ 就太容易了!
Mike 保证在这些条件下一定存在解,请你帮他满足他的好奇心!
输入格式
第一行包含一个整数 $n$($1 \leq n \leq 10^{5}$),表示序列的元素个数。
第二行包含 $n$ 个用空格分隔的整数 $a_{1},...,a_{n}$($1 \leq a_{i} \leq 10^{9}$),表示序列 $A$。
第三行也包含 $n$ 个用空格分隔的整数 $b_{1},...,b_{n}$($1 \leq b_{i} \leq 10^{9}$),表示序列 $B$。
输出格式
第一行输出一个整数 $k$,表示找到的不公平子集的大小。$k$ 应满足 $k \leq \left\lfloor \frac{n}{2} \right\rfloor+1$。
第二行输出 $k$ 个整数 $p_{1},p_{2},...,p_{k}$($1 \leq p_{i} \leq n$),表示 $P$ 序列中的下标,可以按任意顺序输出,且下标互不相同。
说明/提示
由 ChatGPT 5 翻译