Let $*A* = {*a*_{1}, *a*_{2}, ..., *a*_{*n*}}$ be any permutation of the first $*n*$ natural numbers ${1, 2, ..., *n*}$. You are given a positive integer $*k*$ and another sequence $*B* = {*b*_{1}, *b*_{2}, ..., *b*_{*n*}}$, where $*b*_{*i*}$ is the number of elements $*a*_{*j*}$ in $*A*$ to the left of the element $*a*_{*t*} = *i*$ such that $*a*_{*j*} ≥ (*i* + *k*)$.
For example, if $*n* = 5$, a possible $*A*$ is ${5, 1, 4, 2, 3}$. For $*k* = 2$, $*B*$ is given by ${1, 2, 1, 0, 0}$. But if $*k* = 3$, then $*B* = {1, 1, 0, 0, 0}$.
For two sequences $*X* = {*x*_{1}, *x*_{2}, ..., *x*_{*n*}}$ and $*Y* = {*y*_{1}, *y*_{2}, ..., *y*_{*n*}}$, let $*i*$-th elements be the first elements such that $*x*_{*i*} ≠ *y*_{*i*}$. If $*x*_{*i*} < *y*_{*i*}$, then $*X*$ is lexicographically smaller than $*Y*$, while if $*x*_{*i*} > *y*_{*i*}$, then $*X*$ is lexicographically greater than $*Y*$.
Given $*n*$, $*k*$ and $*B*$, you need to determine the lexicographically smallest $*A*$.
Input
The first line contains two space separated integers $*n*$ and $*k*$ ($1 ≤ *n* ≤ 1000$, $1 ≤ *k* ≤ *n*$). On the second line are $*n*$ integers specifying the values of $*B* = {*b*_{1}, *b*_{2}, ..., *b*_{*n*}}$.
Output
Print on a single line $*n*$ integers of $*A* = {*a*_{1}, *a*_{2}, ..., *a*_{*n*}}$ such that $*A*$ is lexicographically minimal. It is guaranteed that the solution exists.
样例
5 2
1 2 1 0 0
4 1 5 2 3
4 2
1 0 0 0
2 3 1 4
题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。