/ Vijos / 题库 /

排列游戏

排列游戏

时间限制:0.5秒  内存限制:256M


【题目描述】

  因为课堂无聊至极,因此小何和小周在课堂上玩起了恢复排列的游戏!

  小周先在草稿纸上写下 \(1..n(1≤n≤1000)\) 的一个排列 \(p_1,p_2,…,p_n\),然后告诉小何另一个序列 \(q_1,q_2,…,q_{n-1}\),对于每一个 \(i\) 满足 \(q_i=p_i+p_{i+1}(1≤i<n)\)。

  基于小周的信息,小何必须恢复满足序列 \(q\) 的“字典序最小”的排列 \(p\)。排列 \(a\) 字典序小于排列 \(b\),如果对于某个 \(k\),对于所有 \(i<k\) 均有 \(a_i=b_i\),且 \(a_k<b_k\),换句话说,这两个排列到某个位置之前都相同,在这个位置上 \(a\) 小于 \(b\)。

【输入格式】

  输入的第一行包含一个整数 \(n\)。
  第二行包含 \(n−1\) 个空格分隔的整数:\(q_1,q_2,…,q_{n-1}\)。

【输出格式】

  输出一行,包含 \(n\) 个空格分隔的整数 \(p_1 ,p_2 ,…,p_n\) 。

【输入输出样例】

 Input

6
5 6 8 5 8

 Output

4 1 5 3 2 6

【测试点性质】

  测试点 \(2−4\) 满足 \(n≤8\)。
  测试点 \(5−10\) 没有额外限制。

【来源】

  Mr.he

信息

ID
2896
难度
9
分类
(无)
标签
递交数
1
已通过
1
通过率
100%
被复制
1
上传者