给你两个用火柴棍拼接成的 n 位数字 a,b。你需要通过以下两种操作把他们变成一样的:
- 任意移除一根火柴棍。这个操作最多用 x 次。
- 任意添加一根火柴棍。这个操作最多用 y 次。
例如将 4 变成 5,我们可以移除一根火柴棍,添加两根火柴棍。
上述操作可以作用于 a,b 中的任意一个数的任意一位,但请注意操作后数字必须是合法的 0−9。
请你判断在使用第一种操作不超过 x 次,第二种操作不超过 y 次的情况下,能否将两个数变成一样的。
Input
第一行一个正整数 T(1≤T≤100),表示有 T 组测试。
每个测试用例有三行:
第一行三个正整数n,x,y(1≤n,x,y≤100) 表示 a,b 有 n 位,第一种操作最多用 x 次,第二种操作最多用 y 次。
第二行一个数 a(1≤a≤10^100)。
第三行一个数 b(1≤b≤10^100)
Output
共 T 行,如果能变成一样的输出 YES
,否则输出 NO
,请注意大小写。
困惑
a与b 的取值范围是10的100次方,这个数怎么取呢?long long 最多也就10的16次方左右,用不了数组的话右要怎么做呢?
Comments NOTHING