MEXchange
시간 제한1초메모리 제한1024 MB
접두사 MEX 수열 B가 주어질 때, 이를 만드는 순열 A가 존재하는지 판정하고 하나를 복원한다.
문제
길이가 인 순열은 부터 까지의 정수가 정확히 한 번씩 등장하는 수열이다. 예를 들어, \left\[ 2,3,1,5,4 \right]는 순열이지만 \left\[ 1,2,2 \right]는 가 두 번 등장하기 때문에 순열이 아니다. 또한 \left\[ 1,3,4 \right]도 길이가 이지만 가 등장하기 때문에 순열이 아니다.
길이가 인 순열 가 주어졌을 때, 수열 를 다음과 같이 정의하자.
길이가 인 수열 가 주어질 때, 순열 를 구해보자.
는 집합 에 포함되지 않는 가장 작은 양의 정수이다. 예를 들어, 이고 이다. 이 문제에서 정의한 는 그 값으로 이 나올 수 없음에 주의하라.
입력
첫째 줄에 순열 의 길이 이 주어진다.
둘째 줄에 수열 의 원소를 나타내는 개의 정수 가 공백으로 구분되어 주어진다.
출력
첫째 줄에 가 되는 순열 가 존재하면 Yes를 출력하고 그렇지 않으면 No를 출력한다.
만약 존재한다면 둘째 줄에 순열 의 원소를 공백으로 구분하여 출력한다. 답이 여러 가지라면 아무거나 출력한다.