#P1617. 装箱问题

装箱问题

题目描述

鸭哥正在整理他的玩具,他遇到了一道有趣的装箱问题:他有一个容量为mm的箱子,并且有nn个大小为aia_i的玩具。除了这nn个玩具外,还有cc个大小均为11的填充物,它们是鸭哥参加各种活动的纪念品,正好可以拿来填充缝隙。

他的任务是确定是否可以选其中一些玩具(填充物也包含在内)放入箱子中,恰好装满箱子,而不留下任何空隙。当然,他也可以选择全部用填充物来填满整个箱子(如果填充物足够多的话),也即装满一箱纪念品,鸭哥也觉得很棒!

输入描述

第一行11个整数T(1T10)T(1\le T\le 10),表示数据组数。对于每组数据:

第一行包含三个整数m,n,c(1n,m,c1000)m,n,c(1\le n,m,c\le 1000),分别表示箱子的容量和玩具的数量以及填充物数量。

第二行包含nn个整数a1,a2,...,an(1ai1000)a_1,a_2,...,a_n(1\le a_i\le 1000),分别表示这nn个玩具的大小。

输出描述

输出TT行分别表示每组数据答案。

对每组数据,输出一行,如果可以恰好装满箱子,输出"YES";否则,输出 "NO"

样例

输入

2
10 4 1
2 3 5 7
10 1 3
6

输出

YES
No

样例解释

对第一组样例:箱子的容量是 1010,玩具的大小分别为2352、3、577

其中一种可行的方法为:玩具232、355加起来正好是 1010,所以可以恰好装满箱子,因此输出 "YES"

对第二组样例:只有一个玩具,大小为66,三个大小为11的填充物,全放进去也只有99的大小,无法填满。