Монокарп является руководителем команды в крупной IT-компании.
Его команде программистов поручены \(m\) проектов, пронумерованных от \(1\) до \(m\). У \(i\)-го проекта уровень сложности \(b_i\).
В команде \(n\) программистов, пронумерованных от \(1\) до \(n\). У \(j\)-го программиста уровень стрессоустойчивости \(a_j\).
Монокарп хочет назначить программистов на проекты таким образом, чтобы:
- каждый программист был назначен на не более чем один проект;
- на каждый проект был назначен хотя бы один программист;
- пусть на \(i\)-й проект назначены \(k\) программистов; тогда все назначенные программисты должны иметь уровень стрессоустойчивости, больший или равный \(\frac{b_i}{k}\).
Помогите Монокарпу назначить программистов на проекты. Если есть несколько ответов, выведите любой из них.
Выходные данные
Если нельзя назначить программистов, выведите «NO».
В противном случае, в первой строке выведите «YES». В \(i\)-й из следующих \(m\) строк выведите список программистов, назначенных на \(i\)-й проект: сначала количество программистов, затем их индексы в произвольном порядке.
Если есть несколько ответов, выведите любой из них.
Примеры
| № | Входные данные | Выходные данные |
|
1
|
5 3 4 6 100 5 1 50 1 12
|
YES
1 3
1 5
3 2 4 1
|
|
2
|
5 3 3 6 100 5 1 50 1 12
|
NO
|
|
3
|
5 3 2 2 2 2 4 3 5 1
|
YES
1 5
3 1 2 3
1 4
|
|
4
|
5 1 10 20 30 40 50 4
|
YES
1 4
|