АВТ
Language: Russian
English

Remote Training on Programming

Problems Online status Contests
News FAQ E-learning
For authors:
Register  ||  Login
 
Hello, Guest! Please login or register.

1433. Olympiad

Time Limit: 1 seconds
Memory Limit:262144KB
Points:100
View Problem Statistics Submit Problem added Игорь Андрианов

Как известно, не все олимпиады по программированию проводятся по правилам 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

 


View Problem Statistics Submit Problem discussion Author/source:
Problems from Contests and Camps / Vologda Students Contests / XVIII Interuni Olympiad 2015 /
1432. F - Sequence 1433. 1434. H - Speed Check 1435. I - DNA Analysis 1436. J - Kindergartens
Problems from Contests and Camps / School olympiads and couses of Vologda region / Impulse - 2019 / Additional Problems /
1432. 06 - Sequence 1433. 1434. 08 - Speed Check 1435. 09 - DNA Analysis 1436. 10 - Kindergartens
time generating 0.094 sec.
© Copyright VSU, AVT, Nosov D.A., Andrianov I.A.