题目内容
小明爸爸是个木工,小明爸爸做家具时,经常需要某一长度的木条。该木条可以是一整条,也可以是由几个木条拼成。每次小明爸爸都要在一大堆的木条剩料中去拼一条需要的长度而耗费大量的时间。小明为了给爸爸排忧解难,便自告奋勇的接下这个任务。
当然,小明又不是神,他是解决不了这个问题的,他之所以这么信心十足,是因为他找到了学编程的你。
刚好你学完了搜索算法之一-----回溯,正好可以解决这个问题,
为了使问题简便,小明已经把剩料的长度都按顺序排成一行,并做了标记。
你要做的就是:按从左到右的顺序找出合适的木料,使得长度刚好是要求的长度。
如果没有解则输出“No Solution!”。
输入
输入数据的第一行为整数 n 和 X。
n(0<n<6100) 表示共有 n 条木料.X 表示要拼的长度 (0<x<100000000).
接下去有一行 n 个整数 s(0<s<1000000,表示剩料的长度)
输出
按顺序输出你找出来的木料的长度。
样例输入:
4 9
2 1 7 8
输出:
2 7