CF1054C.Candies Distribution
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
There are n children numbered from 1 to n in a kindergarten. Kindergarten teacher gave ai ( 1≤ai≤n ) candies to the i -th child. Children were seated in a row in order from 1 to n from left to right and started eating candies.
While the i -th child was eating candies, he calculated two numbers li and ri — the number of children seating to the left of him that got more candies than he and the number of children seating to the right of him that got more candies than he, respectively.
Formally, li is the number of indices j ( 1≤j<i ), such that ai<aj and ri is the number of indices j ( i<j≤n ), such that ai<aj .
Each child told to the kindergarten teacher the numbers li and ri that he calculated. Unfortunately, she forgot how many candies she has given to each child. So, she asks you for help: given the arrays l and r determine whether she could have given the candies to the children such that all children correctly calculated their values li and ri , or some of them have definitely made a mistake. If it was possible, find any way how she could have done it.
输入格式
On the first line there is a single integer n ( 1≤n≤1000 ) — the number of children in the kindergarten.
On the next line there are n integers l1,l2,…,ln ( 0≤li≤n ), separated by spaces.
On the next line, there are n integer numbers r1,r2,…,rn ( 0≤ri≤n ), separated by spaces.
输出格式
If there is no way to distribute the candies to the children so that all of them calculated their numbers correctly, print «NO» (without quotes).
Otherwise, print «YES» (without quotes) on the first line. On the next line, print n integers a1,a2,…,an , separated by spaces — the numbers of candies the children 1,2,…,n received, respectively. Note that some of these numbers can be equal, but all numbers should satisfy the condition 1≤ai≤n . The number of children seating to the left of the i -th child that got more candies than he should be equal to li and the number of children seating to the right of the i -th child that got more candies than he should be equal to ri . If there is more than one solution, find any of them.
输入输出样例
输入#1
5 0 0 1 1 2 2 0 1 0 0
输出#1
YES 1 3 1 2 1
输入#2
4 0 0 2 0 1 1 1 1
输出#2
NO
输入#3
3 0 0 0 0 0 0
输出#3
YES 1 1 1
说明/提示
In the first example, if the teacher distributed 1 , 3 , 1 , 2 , 1 candies to 1 -st, 2 -nd, 3 -rd, 4 -th, 5 -th child, respectively, then all the values calculated by the children are correct. For example, the 5 -th child was given 1 candy, to the left of him 2 children were given 1 candy, 1 child was given 2 candies and 1 child — 3 candies, so there are 2 children to the left of him that were given more candies than him.
In the second example it is impossible to distribute the candies, because the 4 -th child made a mistake in calculating the value of r4 , because there are no children to the right of him, so r4 should be equal to 0 .
In the last example all children may have got the same number of candies, that's why all the numbers are 0 . Note that each child should receive at least one candy.