АВТ
Язык:

Дистанционный практикум по программированию

Задачи Online статус Турниры
Учебники Справка СДО
 
Здравствуйте, Гость! Войдите с паролем или зарегистрируйтесь.

1433. Олимпиада

Ограничение времени: 1 сек.
Ограничение памяти:262144 КБайт
Баллы:100
Статистика Послать на проверку Задачу добавил Igor Andrianov

Как известно, не все олимпиады по программированию проводятся по правилам ACM ICPC. Один из альтернативных вариантов (частный случай правил областной олимпиады школьников этого года) состоит в следующем.

Множество тестов к задаче делится на непересекающиеся непустые подмножества, называемые подзадачами. Все тесты одной и той же подзадачи оцениваются одинаковым целым количеством баллов (но в разных подзадачах баллы за тесты могут отличаться). Итоговый балл за решение вычисляется как сумма баллов по всем пройденным тестам. Полностью верное решение должно получать ровно 100 баллов.

Рассмотрим пример. Пусть у нас есть две подзадачи, первая содержит 6 тестов стоимостью по 5 баллов каждый, вторая 10 тестов по 7 баллов. Если решение прошло 2 теста из первой подзадачи и 3 теста из второй подзадачи, то оно получает 2*5 + 3*7 = 31 балл.

Заметим, что не все целые числа от 0 до 100 могут быть допустимыми результатами участников. Например, 1 балл в данном примере набрать невозможно.

Как-то раз в некотором городе прошла олимпиада по описанным правилам. После окончания олимпиады один из её участников, изучая протокол с результатами, почему-то засомневался а действительно ли могли получиться такие результаты по одной из задач. Участник помнит общее количество тестов, количество подзадач, а также максимальный балл, который можно было набрать по каждой подзадаче. К сожалению, он не помнит, сколько в каждой подзадаче было тестов.

Определите, сколько могло быть тестов в каждой подзадаче, чтобы результаты из протокола олимпиады действительно могли быть получены всеми участниками.

 

Входные данные. Первая строка входных данных содержит три разделенных пробелами целых числа T, S и N, где T  количество тестов, S  количество подзадач, N  количество неповторяющихся результатов участников (1 ≤ T ≤ 100, 1 ≤ S ≤ 10, 1 ≤ N ≤ 100).

Вторая строка содержит S разделённых пробелом положительных целых чисел  максимально возможные баллы за каждую подзадачу. Сумма этих чисел гарантированно равна 100.

Третья строка содержит N разделенных пробелом упорядоченных по возрастанию неповторяющихся целых чисел в диапазоне от 1 до 100  различные ненулевые результаты участников из протокола олимпиады.

 

Выходные данные. В первую строку выходных данных выведите слово "YES" (без кавычек), если решение существует, и "NO", если нет.

В случае ответа "YES" в следующей строке выведите S разделенных пробелом целых чисел  количество тестов в каждой подзадаче. Если возможно несколько верных ответов, выведите любой.

 

Примеры

Входные данные

Выходные данные

16 2 3

30 70

12 19 95

YES

6 10

2 2 1

40 60

50

NO

 


Статистика Послать на проверку Обсуждение задачи Автор/источник:
Задачи с соревнований / Межвузовские олимпиады / XVIII межвузовская олимпиада 2015 /
1432. F - Последовательность 1433. 1434. H - Контроль скорости 1435. I - Анализ ДНК 1436. J - Детские сады
 
время генерации 0.125 сек.
© Copyright ВоГУ, АВТ, Носов Д.А., Андрианов И.А.