아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Сокровищница

시간 제한4초메모리 제한1024 MB

요약
1부터 a_n까지의 값으로 라틴 정사각형을 만들되 주어진 모든 a_i에 대해 왼쪽 위 a_i x a_i 부분표도 라틴 정사각형이 되도록 채우고, 불가능하면 불가능하다고 판정한다.
난이도

보통10점 중 7점

유형
조합론, 수학, 구현, 정수론
정답자
아직 제출이 없습니다

문제

Иэн и Барли добрались до цели своего путешествия. Им осталось лишь открыть сокровищницу, в которой их ждёт ещё один волшебный кристалл.

Латинским квадратом называется квадратная таблица размера x×xx \times x, в которой ровно xx различных значений, и в каждой строке и каждом столбце все значения различны.

Из древнего манускрипта, братьям известна последовательность целых чисел a_1<a_2<⋯<a_n−1<a_na\_1 < a\_2 < \dots < a\_{n - 1} < a\_n. Чтобы скровищница открылась, нужно нарисовать на входе в неё квадратную таблицу размера a_n×a_na\_n \times a\_n, заполненную числами от 11 до a_na\_n. При этом, для всех ii подтаблица размера a_i×a_ia\_i \times a\_i, верхний левый угол которой совпадает с верхним левым углом всей таблицы, должна являться латинским квадратом.

Помогите братьям нарисовать правильную таблицу, либо сообщите, что это невозможно.

입력

В первой строке дано одно целое число nn --- длина последовательности чисел (1≤n≤1,0001 \le n \le 1\\,000).

Во второй строке даны nn целых чисел a_ia\_i (1≤a_i≤1,0001 \le a\_i \le 1\\,000, a_i<a_i+1a\_i < a\_{i + 1}).

출력

Если искомая таблица существует, в первой строке выведите <<Yes>>, а в следующих a_na\_n строках по a_na\_n чисел со значениями от 11 до a_na\_n --- таблицу. Если решений несколько, выведите любое.

Если искомой таблицы не существует, в единственной строке выведите <<No>>.

예제4

  1. 예제 1

    입력
    1
    3
    
    예상 출력
    Yes
    1 3 2
    2 1 3
    3 2 1
    
  2. 예제 2

    입력
    3
    1 2 4
    
    예상 출력
    Yes
    1 2 3 4
    2 1 4 3
    3 4 1 2
    4 3 2 1
    
  3. 예제 3

    입력
    2
    2 3
    
    예상 출력
    No
    
  4. 예제 4

    입력
    2
    2 5
    
    예상 출력
    Yes
    1 2 3 5 4
    2 1 4 3 5
    5 4 1 2 3
    4 3 5 1 2
    3 5 2 4 1