Antinomy与安穆-艾兰
题号:NC200163
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

沉迷《原初幻想41》的冒险者Antinomy来到了安穆·艾兰——在暗之战士到来之前,这里是第一世界光之泛滥停滞的起点,也是第一世界黑夜的终点。

冒险者找到了让食罪灵化的人们体内的以太重新活跃起来的办法,为了施展这个魔法,他需要将当前的个触媒按法力值组成不递增(数列中存在相邻的两项,使得后一项不大于前一项)的一维数列。

现在冒险者已经摆好了一部分,已经摆好的位置不能被替换掉,每个触媒当然也只能放在一个位置,不能拆成多个。

请计算剩下的触媒是否还能满足施法要求。

输入描述:

第一行输入一行两个整数,分别表示触媒的总数量和还没有摆好的触媒数量。

第二行输入一行空格分隔的个数字,表示当前这个数列的状态。对于如果不为那么表示这个位置已经摆好了触媒,这个位置的值是这个触媒的法力值;如果,那么表示这里还没有摆好触媒。

第三行输入一行空格分隔的个数字,表示还没有摆好的触媒的法力值





输出描述:

如果能够组成一个满足要求的数列,那么输出一行Yes,否则输出一行No
示例1

输入

复制
4 2
11 0 0 14
5 4

输出

复制
Yes

说明

可以有两种可能:

11 4 5 14

11 5 4 14

显然都是可以的,所以输出Yes
示例2

输入

复制
6 1
2 3 0 8 9 10
5

输出

复制
No
示例3

输入

复制
7 7
0 0 0 0 0 0 0
1 2 3 4 5 6 7

输出

复制
Yes