3632 - 奶牛农场(b)

题目描述

小X是CZ市著名的农场主,他拥有着CZ市最大的奶牛农场。农场里有一排牛棚,一共 n 个牛棚,从左到右依次编号为1,2,….,n。目前有些牛棚里住着奶牛,有些牛棚还是空的。每个奶牛有一个高度,其中第i个牛棚里的奶牛的高度为H[i],如果第i个牛棚里没有奶牛的话Hi=0,为了使小X的牛棚变得美观,他打算去市场上买一些奶牛放到空着的牛棚里(假设市场上能买到任意多个高度在110^9之间的任意正整数的奶牛),使得每个牛棚里都有一头奶牛,并且高度从左往右严格递增。

请你告诉小X是否能让他的牛棚变得美观,如果可以请给出一个任意合法的方案。

输入

第一行1个正整数n,表示牛棚个数。

第二行n个非负整数H[i],如果H[i]=0说明第i个牛棚是空的,否则说明第i个牛棚里面有一个高度为H[i]的奶牛。

输出

第一行输出一个字符串YESNO。如果让他的牛棚变得美观,则输出YES,否则输出NO。 (均不包含引号)

如果第一行输出YES,再输出第二行n个正整数1 \leq H’[i] \leq 10^9,你需要保证对所有 1 \leq i \leq n-1 满足 H’[i]< H’[i+1] ,并且如果 H[i] > 0,那么H’[i]=H[i],如果有多种合法的方案,输出任意一种即可。

样例

输入

3
0 0 0

输出

YES
4 5 6

输入

4
0 2 0 4

输出

YES
1 2 3 4

输入

4
0 0 0 2

输出

NO
说明

提示

【样例3解释】

因为高度是正整数,还要严格递增,所以第4头奶牛的高度必须>=4。所以不存在满足题目条件的方案。

【样例4解释】

输入:

2

1000000000 0

输出:

NO

因为买不到高度为>10^9的奶牛,所以不存在满足题目条件的方案。

【数据范围】

对于测试点1-5: 1 \leq n \leq 5, 0 \leq H[i] \leq 10

对于测试点6-9: 1 \leq n \leq 10^5,0 \leq H[i] \leq 10^9

(未做special judge)

来源

23年常州市赛T2

标签
题目参数
时间限制 1 秒
内存限制 128 MB
提交次数 16
通过人数 10
金币数量 0 枚
难度 入门


上一题 下一题