A16359. I Wanna be the Team Leader
编程题
普及/提高-
知识点
题目描述
Monocarp is a team leader in a massive IT company.
There are $m$ projects his team of programmers has to complete, numbered from $1$ to $m$ . The $i$ -th project has a difficulty level $b_i$ .
There are $n$ programmers in the team, numbered from $1$ to $n$ . The $j$ -th programmer has a stress tolerance level $a_j$ .
Monocarp wants to assign the programmers to the projects in such a way that:
- each programmer is assigned to no more than one project;
- each project has at least one programmer assigned to it;
- let $k$ programmers be assigned to the $i$ -th project; then all the assigned programmers have to have a stress tolerance level greater than or equal to $\frac{b_i}{k}$ .
Help Monocarp to find a valid assignment. If there are multiple answers, print any of them.
There are $m$ projects his team of programmers has to complete, numbered from $1$ to $m$ . The $i$ -th project has a difficulty level $b_i$ .
There are $n$ programmers in the team, numbered from $1$ to $n$ . The $j$ -th programmer has a stress tolerance level $a_j$ .
Monocarp wants to assign the programmers to the projects in such a way that:
- each programmer is assigned to no more than one project;
- each project has at least one programmer assigned to it;
- let $k$ programmers be assigned to the $i$ -th project; then all the assigned programmers have to have a stress tolerance level greater than or equal to $\frac{b_i}{k}$ .
Help Monocarp to find a valid assignment. If there are multiple answers, print any of them.
输入格式
The first line contains two integers $n$ and $m$ ( $1 \le n \le 2 \cdot 10^5$ ; $1 \le m \le 20$ ) — the number of programmers and the number of projects.
The second line contains $n$ integers $a_1, a_2, \dots, a_n$ ( $1 \le a_i \le 10^9$ ) — the stress tolerance level of each programmer.
The third line contains $m$ integers $b_1, b_2, \dots, b_m$ ( $1 \le b_i \le 10^9$ ) — the difficulty level of each project.
The second line contains $n$ integers $a_1, a_2, \dots, a_n$ ( $1 \le a_i \le 10^9$ ) — the stress tolerance level of each programmer.
The third line contains $m$ integers $b_1, b_2, \dots, b_m$ ( $1 \le b_i \le 10^9$ ) — the difficulty level of each project.
输出格式
If there is no valid assignment, print "NO".
Otherwise, in the first line, print "YES". In the $i$ -th of the next $m$ lines, print the list of the programmers assigned to the $i$ -th project: first, the number of programmers, then their indices in an arbitrary order.
If there are multiple answers, print any of them.
Otherwise, in the first line, print "YES". In the $i$ -th of the next $m$ lines, print the list of the programmers assigned to the $i$ -th project: first, the number of programmers, then their indices in an arbitrary order.
If there are multiple answers, print any of them.
输入输出样例
输入 #1
5 3 4 6 100 5 1 50 1 12
输出 #1
YES 1 3 1 5 3 2 4 1
输入 #2
5 3 3 6 100 5 1 50 1 12
输出 #2
NO
输入 #3
5 3 2 2 2 2 4 3 5 1
输出 #3
YES 1 5 3 1 2 3 1 4
输入 #4
5 1 10 20 30 40 50 4
输出 #4
YES 1 4