Цифрове дерево#10163

Цифрове дерево

3,5 секунди
64 мегабайти
Легка

У Назіка є велике дерево. Його можна представити як неорієнтований зв'язний граф з вершин, пронумерованих від до , і n - 1 ребра між ними. На кожному ребрі записана одна ненульова цифра.

Макса, друга Назіка, також зацікавило це дерево. Але ще більше його цікавлять особливі шляхи в цьому дереві. Улюблене число Макса — , що є взаємно простим з , тобто gcd(M, 10) = 1.

Макс і Назік вважають впорядковану пару різних вершин особливою, якщо, пройшовши по найкоротшому шляху від вершини до вершини і виписавши цифри, які зустрічаються на цьому шляху у тому ж порядку, вони отримають десятковий запис цілого числа, що ділиться націло на .

Формально, хлопці вважають впорядковану пару різних вершин особливою, якщо виконується наступне:

Допоможіть хлопцям знайти кількість особливих пар.

Вхідні дані

Перший рядок містить два цілі числа і (2 \le n \le 100\,000, 1 \le M \le 10^9, gcd(M, 10) = 1) — кількість вершин і улюблене число Макса.

Наступні n - 1 рядків містять по три цілі числа. -й з них містить u_i, v_i і w_i, що означають ребро між вершинами u_i та v_i, на якому записана цифра w_i (1 \le u_i, v_i \le n, 1 \le w_i \le 9).

Вихідні дані

Виведіть одне ціле число — кількість особливих пар.

Приклади

\begin{example}\exmp{6 71 2 11 3 42 4 22 5 33 6 7}{7}%\exmp{5 111 2 32 3 33 4 34 5 3}{8}%\end{example}

Приклад 1

Loading
Loading

Примітка

У першому прикладі з умови особливими є пари , , , , , , .

Числа, що створюються цими парами — , , , , , , відповідно, всі вони кратні . Зверніть увагу, що і вважаються різними парами.

У другому прикладі з умови особливими є пари , , , , , , , , і з цих пар дають число , а з них дають число , і всі вони кратні .