该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
展板排布(display)
题目描述
某区域信息素养活动正在布置一条展示长廊。长廊中共有 块展示板,每块展示板都有一个宽度,分别为:
所有展示板的宽度两两不同。
工作人员需要将这 块展示板从左到右依次摆放。由于长廊中有一处固定的检修口,检修口的位置距离起点恰好为 。为了不遮挡检修口,要求在摆放过程中,任意若干块已经摆好的展示板总宽度都不能恰好等于 。
也就是说,若最终摆放顺序为:
则必须满足对于任意 :
现在请你重新安排展示板的摆放顺序。
如果存在多个满足条件的摆放方案,请输出字典序最小的一个;如果无论怎样摆放都无法满足要求,请输出 NO。
输入格式
第一行包含两个整数 ,表示展示板数量和检修口距离起点的位置。
第二行包含 个互不相同的正整数 ,表示每块展示板的宽度。
输出格式
如果不存在合法的摆放顺序,输出一行:
NO
否则,第一行输出:
YES
第二行输出 个整数,表示字典序最小的合法摆放顺序。
样例
样例输入 #1
3 3
1 2 4
样例输出 #1
YES
1 4 2
样例解释 #1
如果按照 的顺序摆放,前两块展示板的总宽度为:
会恰好遮挡检修口,因此该顺序不合法。
按照 的顺序摆放时,前缀总宽度依次为:
均不等于 ,因此合法。
同时,在所有合法方案中, 是字典序最小的一个。
样例输入 #2
3 6
1 2 3
样例输出 #2
NO
样例解释 #2
所有展示板的总宽度为:
无论怎样调整顺序,全部摆放完成后的总宽度都会等于 ,因此不存在合法方案。
数据范围与约定
对于 的数据,保证:
且 两两不同。
| 测试点编号 | 分值 | 特殊性质 | ||
|---|---|---|---|---|
| 无 | ||||
| 特殊性质 A | ||||
| 特殊性质 B | ||||
| 无 | ||||
| 特殊性质 C | ||||
| 无 |
特殊性质说明:
- 特殊性质 A:保证所有 的总和等于 。
- 特殊性质 B:保证将 从小到大排序后,任意前缀和都不等于 。
- 特殊性质 C:保证 对所有 均成立。
京公网安备11010802045784号