#ATagc005c. [AGC005C] Tree Restoring

[AGC005C] Tree Restoring

题目描述

青木君非常喜欢数列和树。

某天,青木君从高桥君那里得到了一个长度为 NN 的数列 a1, a2, ..., aNa_1,\ a_2,\ ...,\ a_N。看到这个数列后,他萌生了构造一棵树的想法。

青木君想要构造的是一棵具有 NN 个顶点的树,且对于每个 i = 1,2,...,Ni\ =\ 1,2,...,N,顶点 ii 到其最远顶点的距离恰好等于 aia_i。其中,每条边的长度均为 11

请判断是否存在满足条件的树。

输入格式

第一行一个整数 NN,表示数列长度。

第二行 NN 个整数,第 ii 个整数表示 aia_i

输出格式

输出仅一行:如果存在满足条件的树,输出 Possible;否则,输出 Impossible

样例 1

输入

5
3 2 2 3 3

输出

Possible

样例 2

输入

3
1 1 2

输出

Impossible

样例 3

输入

10
1 2 2 2 2 2 2 2 2 2

输出

Possible

样例 4

输入

10
1 1 2 2 2 2 2 2 2 2

输出

Impossible

样例 5

输入

6
1 1 1 1 1 5

输出

Impossible

样例 6

输入

5
4 3 2 3 4

输出

Possible

说明/提示

样例解释 1

上图是满足条件的树的一个例子。红色箭头表示到最远顶点的路径。

数据范围

  • 2N1002 \le N \le 100
  • 1aiN11 \le a_i \le N-1