U314854 打怪兽
题目背景
> QBXT 储备营讲的一道外国的题,感觉很好但是国内找不到,FallingSakura 对此深感遗憾,于是便有了这道题。
题目描述
有 $n$ 只怪兽,从 $1$ 到 $n$ 编号,初始你有 $k$ 点血量,打第 $i$ 只怪兽需要 $a_i$ 的血量,打完第 $i$ 只怪兽会获得 $b_i$ 的血量,你可以按照任意次序打所有怪兽,问能否打完所有的怪兽,打完后你剩多少血量,并给出一种方案。
**注**:本题可能不止一种答案,故采用 `Special Judge`。
若判断正确,但最终所剩血量错误,可得一半分。
输入格式
输入共有 $n+1$ 行。
第一行,两个整数,分别为 $n$ 和 $k$。
第二行至第 $n+1$ 行,每行两个整数,分别为 $a_i$ 和 $b_i$。
输出格式
输出共有一行或三行。
第一行,一个字符串,若可以打完所有怪兽,则输出 `Yes` ,若不能,则输出 `No`。
若输出为 `Yes`,则:
第二行输出一个整数,代表剩余血量。
第三行为 $n$ 个整数,以空格间隔,表示打怪的顺序。
说明/提示
对于所有数据,$1\le{n}\le{2\times{10^5}}$,$1\le{k,a_i,b_i}\le{10^4}(1\le{i}\le{n})$。