题号:NC200163
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
沉迷《原初幻想41》的冒险者Antinomy来到了安穆·艾兰——在暗之战士到来之前,这里是第一世界光之泛滥停滞的起点,也是第一世界黑夜的终点。
冒险者找到了让食罪灵化的人们体内的以太重新活跃起来的办法,为了施展这个魔法,他需要将当前的

个触媒按法力值组成
不递增(数列中存在相邻的两项,使得后一项不大于前一项)的一维数列。
现在冒险者已经摆好了一部分,已经摆好的位置不能被替换掉,每个触媒当然也只能放在一个位置,不能拆成多个。
请计算剩下的触媒是否还能满足施法要求。
输入描述:
第一行输入一行两个整数
和
,分别表示触媒的总数量和还没有摆好的触媒数量。
第二行输入一行空格分隔的
个数字,表示当前这个数列的状态
。对于
如果不为
那么表示这个位置已经摆好了触媒,这个位置的值是这个触媒的法力值;如果
是
,那么表示这里还没有摆好触媒。
第三行输入一行空格分隔的

个数字,表示还没有摆好的触媒的法力值

。
输出描述:
如果能够组成一个满足要求的数列,那么输出一行Yes,否则输出一行No
示例1
说明
可以有两种可能:
11 4 5 14
11 5 4 14
显然都是可以的,所以输出Yes
示例3
输入
复制
7 7
0 0 0 0 0 0 0
1 2 3 4 5 6 7