Задачи
Кефа и парк
Кефа и парк
Кефа решил отпраздновать свой первый крупный заработок походом в ресторан.
Он живет возле необычного парка. Парк представляет из себя подвешенное дерево из $n$ вершин c корнем в вершине $1$. В вершине $1$ также находится дом Кефы. К сожалению для нашего героя, в парке также находятся коты. Кефа уже выяснил номера вершин, в которых находятся коты.
В листовых вершинах парка находятся рестораны. Кефа хочет выбрать ресторан, в который он пойдет, но, к сожалению, он очень боится котов, поэтому он ни за что не пойдёт в ресторан, на пути к которому от его дома найдётся более $m$ подряд идущих вершин с котами.
Ваша задача --- помочь Кефе посчитать количество ресторанов, в которые он может сходить.
\InputFile
В первой строке записаны два целых числа $n$ и $m~(2 \le n \le 10^5, 1 \le m \le n)$ --- количество вершин дерева и максимальное количество подряд идущих вершин с котами, которое способен перенести Кефа.
Во второй строке содержится $n$ целых чисел $a_1, a_2, ..., a_n$, где каждое $a_i$ либо равняется $0$ (тогда в вершине $i$ нет кота), либо равняется $1$ (тогда в вершине $i$ есть кот).
В следующих $n - 1$ строках записаны ребра дерева в формате $x_i~y_i~(1 \le x_i, y_i \le n, x_i \ne y_i)$, где $x_i$ и $y_i$ --- вершины дерева, соединенные очередным ребром.
Гарантируется, что данный набор рёбер задаёт дерево.
\OutputFile
Выведите количество различных листьев дерева, на пути от дома Кефы до которых не больше $m$ подряд идущих вершин с котами.
\includegraphics{https://static.eolymp.com/content/91/91715fb9b3c62508d624b9676dc254628b788aff.gif}
Входные данные #1
7 1 1 1 0 0 0 0 1 1 2 1 3 2 4 2 5 3 6 3 7
Выходные данные #1
2
Входные данные #2
8 2 1 1 0 1 0 1 0 1 1 2 2 3 2 5 2 6 3 4 6 7 6 8
Выходные данные #2
2