Informática Intermediário - Semana 75

Entregas do Noel

Por incrível que pareça, Papai Noel ainda não começou a fabricar os presentes que serão entregues no natal. Para ele não se atrasar foi bolado um plano para agilizar as entregas e a fabricação.

O plano de Noel consiste em escolher duas crianças (A e B), para serem as primeiras a receberem os presentes, mas o que ele reparou é que no caminho entre a casa da criança A até a casa da criança B, ele acabará passando por outras crianças que também enviaram suas cartinhas com o que gostariam de ganhar. Portanto Noel decidiu que irá entregar todos os presentes das crianças que estão entre as casas A e B em apenas uma viagem.

A parte da entrega é muito simples para o Noel, mas ele precisa otimizar a compra de matérias-primas para a confecção de todos os presentes, e é aqui que você entra para o auxiliar.

Será dado a você o mapa com todas as casas onde ocorrerá entregas, que consiste em N casas, com N - 1 ligações, tendo exatamente um caminho entre cada uma delas, como Noel sempre viaja de trenó, todas as ligações podem ser usadas nos dois sentidos. Após isto Noel irá fazer diversas perguntas do tipo A B, e você deverá responder quantos presentes distintos ele terá que entregar no caminho entre a casa A e a casa B.

Entrada

A primeira linha contêm dois inteiros N e M (2 \leq N \leq 10^5, 1 \leq M \leq 10^5), indicando respectivamente o total de casas e o total de perguntas que Noel irá fazer.

Na próxima linha terá a descrição de cada presente que será entregue nas casas. Cada presente será uma palavra com letras minúsculas contendo no máximo 20 caracteres. O presente na posição i, indica o que a criança na casa i deseja ganhar.

Segue então N - 1 linhas, contendo dois inteiros A e B (1 \leq A, B \leq N, A != B), indicando que existe uma ligação entre as casas A e B.

M linhas seguem com dois inteiros A e B, representando a pergunta de Noel.

Saída

Para cada pergunta de Noel, você deverá imprimir a quantidade distinta de presentes que serão entregues.

Exemplos

ENTRADA

SAÍDA

8 4
carrinho boneca boneco bola videogame celular bicicleta bicicleta
1 2
1 3
1 4
3 5
3 6
3 7
4 8
2 5
7 8
7 7
6 7
4
4
1
3

Enviar solução: uri