{"code":"encode","name":"Mã hóa dãy ngoặc","description":"Giả sử ta có một chuỗi ngoặc đơn đúng, ta gọi chuỗi này là $S$, khi đó $S$ có hai cách giải mã sau đây:\r\n\r\n - Cách 1: $S$ sẽ được mã hóa dưới dạng $P=p_1,p_2,...,p_n$. Trong đó $p_i$ là số lượng ngoặc đơn trái \"(\" đứng trước ngoặc đơn phải \")\" thứ $i$ tính từ trái.\r\n \r\n - Cách 2: $S$ sẽ được mã hóa dưới dạng $W=w_1,w_2,...,w_n$. Gọi $r$ là vị trí dấu ngoặc đơn \")\" thứ $i$ tính từ trái sang. Gọi $l$ là vị trí của dấu ngoặc đơn trái \"(\" tương thích với dấu ngoặc \")\" đó. Khi đó $w_i$ chính bằng số lượng dấu ngoặc đơn phải \")\" nằm trong đoạn từ $l$ tới $r$.\r\n\r\n- Ví dụ: Ta có chuỗi $S=(((()()())))$. Khi đó ta có dãy $P$ tương ứng là: $P=4,5,6,6,6,6$ và dãy $W$ tương ứng là $W=1,1,1,4,5,6$. $W[1] = 1$ vì dấu ngoặc đơn \")\" thứ nhất nằm ở vị trí $5$ tương ứng với dấu ngoặc \"(\" nằm ở vị trí $4$. Trong đoạn $4$ tới $5$ của $S$ có $1$ dấu ngoặc đơn \")\". \r\n\r\n**Yêu cầu:** Cho dãy $P$ bất kì, tìm dãy $W$ tương ứng.\r\n\r\n#### Input\r\n- Dòng thứ nhất chứa chứa số nguyên dương $n \\ (1 \\leq n \\leq 10^5)$ - Là độ dài của dãy $P$.\r\n\r\n- Dòng thứ hai chứa $n$ số nguyên dương $p_i \\ (1 \\leq p_i \\leq n)$ - Mỗi số cách nhau bởi dấu cách.\r\n\r\n#### Output \r\n- Nếu không tồn tại dãy $W$ thỏa mãn yêu cầu bài toán, in ra $-1$. Ngược lại, in ra dãy $W$ cần tìm.\r\n\r\n#### Scoring \r\n- Subtask $1$ ($10\\%$ số điểm): $n\\leq 10$..\r\n- Subtask $2$ ($20\\%$ số điểm): $n \\leq 100$.\r\n- Subtask $3$ ($30\\%$ số điểm): $n \\leq 5000$.\r\n- Subtask $4$ ($40\\%$ số điểm): $n \\leq 10^5$.\r\n\r\n#### Example\r\n!!! question \"Test 1\"\r\n    ???+ \"Input\"\r\n        ```sample\r\n        3\r\n        2 2 3 \r\n        ```\r\n    ???+ success \"Output\"\r\n        ```sample\r\n        1 2 1\r\n        ```","points":400.0,"partial":true,"time_limit":1.0,"memory_limit":262144,"short_circuit":false,"allowed_languages":[3,4,34,36,37,5,6,11,12,14,28,2,38,39,9,18,17,29,23,27,35,25,26,10,7,19,32,1,8,15,16,24,20,33,13,41,21,40],"is_public":true,"is_manually_managed":false,"permissions":{"can_edit":false}}