eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Бермудский треугольник

Бермудский треугольник

Люди в скрытой области Бермудского треугольника делают все, что им нужно, в треугольной форме. Однажды, кто-то решил нарушить правила и захотел выпечь торт в форме шестиугольника. Но, как обычно, он должен сложить торт из треугольных кусков. Куски должны представлять собой равносторонние треугольники, возможно разных размеров для разных людей. Он может использовать столько треугольников, сколько необходимо для разрезания торта на куски, так чтобы ничего не осталось. Например, на следующем рисунке показан один из способов разрезать шестиугольник со стороной \textbf{9} на треугольники со сторонами \textbf{2} и \textbf{3}. (торт следует разрезать вдоль толстых линий, тонкие линии проведены для указания размеров). \includegraphics{https://static.e-olymp.com/content/43/43710606faf5dab27a5e2be629b78d073a428c50.jpg} На вход подается шестиугольник и типы треугольников (которые задаются длинами сторон). Необходимо определить, можно ли полностью разрезать шестиугольник на треугольники заданных типов. \InputFile Первая строка содержит количество тестов \textbf{t} (\textbf{1} ≤ \textbf{t} ≤ \textbf{10}). Каждый тест состоит из одной строки, содержащей длину \textbf{s} (\textbf{1} ≤ \textbf{s} ≤ \textbf{25}) стороны шестиугольника, за которым следует количество типов треугольников \textbf{n} (\textbf{1} ≤ \textbf{n} ≤ \textbf{10}). Следующие \textbf{n} целых чисел описывают длины сторон каждого из типов треугольников (от \textbf{1} до \textbf{25} включительно). \OutputFile Для каждого теста вывести в отдельной строке \textbf{YES} или \textbf{NO} в зависимости от возможности разрезать шестиугольник на треугольники заданных типов.
Лимит времени 10 секунд
Лимит использования памяти 64 MiB
Входные данные #1
3
5 2 2 3
7 2 3 2
13 2 2 3
Выходные данные #1
NO
NO
YES
Источник 2001 Asia Regional Teheran