AI 摘要

当遇到像是10的100次方这么大的数值时,可以考虑使用字符串来表示这个数。字符串能够完整地保留这么大的数,不会造成溢出问题。在这种情况下,将a和b表示为字符串,然后按照题目描述的操作来判断能否将它们变成一样的。

给你两个用火柴棍拼接成的 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次方左右,用不了数组的话右要怎么做呢?

届ける言葉を今は育ててる
最后更新于 2024-04-10