#iroha2019day4a. [iroha2019_day4_a]あるよるのできごと
[iroha2019_day4_a]あるよるのできごと
ストーリー
开始的那天晚上,我和彩莉一起沉迷于一个叠彩色方块的游戏中。那个游戏并没有什么特别之处,但却存在许多bug。例如,本应该消失的方块没有消失,风吹了起来方块飞了起来,奇怪的浮岛出现了。
那个晚上,在我和彩莉的在线对战中,对战结果很奇怪。「计分部分也存在bug吧?」为了确认彩莉的话是否属实,我决定核实一下。
问题文
这个游戏只支持4人游戏,每一轮比赛中,名次排在第1到第3位的玩家将获得相应的得分。每一轮比赛不会以平局结束。在积分显示画面上,可以看到每个玩家得分累加的记录。
例如,如果有一个玩家的得分记录显示为「1 2 2」,那么可以知道该玩家在某一轮中获得了第1名,在以后的某一轮中获得了第2名,在以后的某一轮中又获得了第2名,而在以后的轮次中没有获得得分。
我和彩莉进行了N轮对战。对于每个玩家,输入N轮的得分数据,请输出是否存在这样的游戏结果。如果存在,请输出每一轮对战结果的示例。
制约条件
- 输入为整数。
输入
输入共有5行。 第1行输入轮次数N、玩家1获得得分次数A、玩家2获得得分次数B、玩家3获得得分次数C、玩家4获得得分次数D。 第2行输入与玩家1获得得分相关的N轮排名。 第3至5行依此类推输入与玩家2至4获得得分相关的信息。 请参考下面的示例。
N A B C D a_1 a_2 \cdots a_A b_1 b_2 \cdots b_B c_1 c_2 \cdots c_C d_1 d_2 \cdots d_D
输出
如果不存在满足输入条件的对战结果,请输出No
。
如果存在满足输入条件的对战结果,请输出Yes
,并在接下来的N行中,输出每一轮比赛中排名第4的玩家编号。如果有多个满足输入条件的输出结果,可以输出任意一个。
输入例1
1 1 1 1 0
1
3
2
输出例1
Yes
4
输入例2
1 0 0 0 0
输出例2
No
输入例3
10 8 7 8 7
1 3 1 3 1 3 1 2
3 3 1 2 3 3 3
2 2 2 1 1 2 2 1
1 2 3 2 2 1 3
输出例3
Yes
4
2
4
3
3
2
1
4
1
2```
---
### 解说
[解说](https://img.atcoder.jp/iroha2019-day4/editorial-A.pdf)