[JLOI2012]树
题号:NC20133
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

把一个正整数分成一列连续的正整数之和。这个数列必须包含至少两个正整数。你需要求出这个数列的最小长度。如果这个数列不存在则输出-1

输入描述:

第一行是两个整数N和S,其中N是树的节点数。
第二行是N个正整数,第i个整数表示节点i的正整数。
接下来的N-1行每行是2个整数x和y,表示y是x的儿子。

输出描述:

输出路径节点总和为S的路径数量。
示例1

输入

复制
3 3

1 2 3

1 2

1 3

输出

复制
2

备注:

对于100%的数据,保证