QOJ.ac

QOJ

実行時間制限: 2 s メモリ制限: 1024 MB 満点: 100 ハック可能 ✓

#18389. 3단 가시

統計

쿠옹이는 큐브가 가시를 뛰어넘는 게임을 하고 있다.

이 게임의 모든 맵에서 큐브는 위치 $0$에서 출발하여 매 프레임 $1$만큼 이동한다. 큐브가 위치 $N$에 도달한다면 공중에 떠 있는 상태인지와 관계없이 맵을 클리어하게 된다.

큐브는 프레임마다 공중에 떠 있는 상태가 아니라면 점프할 수 있다. 큐브가 점프하면 점프한 다음 프레임부터 $3$프레임 동안 공중에 떠 있는 상태가 된다. 예를 들어 $1$프레임에 점프를 하면 $2$프레임부터 $4$프레임까지는 공중에 떠 있는 상태이다가 $5$프레임에 공중에 떠 있는 상태가 아니게 된다.

만약 큐브가 공중에 떠 있는 상태가 아닐 때 어떤 가시와 위치가 일치하면 큐브는 가시에 부딪혀 죽고 클리어에 실패하게 된다.

쿠옹이는 어떤 맵은 클리어가 불가능하다고 생각했다. 쿠옹이를 위해 맵의 클리어 가능성을 판별해 주자.

Input

첫째 줄에 쿠옹이가 궁금해한 맵의 개수 $T(1 \le T \le 1\,000)$가 주어진다.

다음 줄부터 $T$개의 맵이 아래와 같은 형식으로 주어진다.

  • 첫째 줄에 맵의 길이 $N$이 주어진다. $(1 \le N \le 10^{18})$
  • 둘째 줄에 가시의 개수 $X$가 주어진다. $(1 \le X \le \min(N - 1, 1\,000))$
  • 셋째 줄에 각 가시의 위치 $P_1$, $P_2$, $\cdots$, $P_X$가 공백으로 구분되어 주어진다. $(1 \le P_1 < P_2 < \cdots < P_X \le N-1)$

입력되는 모든 수는 정수이다.

Output

맵이 주어질 때마다 클리어 가능하다면 POSSIBLE, 불가능하다면 IMPOSSIBLE을 출력하라.

Examples

Input 1

3
4
3
1 2 3
5
2
1 4
10
4
5 6 7 9

Output 1

POSSIBLE
IMPOSSIBLE
POSSIBLE

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.