跑步

提交数: 309, 通过率: 19.09%, 平均分: 46.41

题目描述:

有一个平台,在数轴上的范围为[0,L],现在有一个人在平台上跑步,速度为一个单位时间跑一个单位距离。

他可以选择平台上任意一个位置作为起点。现在给出了n个时间段,他要在这几个时间段跑步,其余时间休息。(休息时位置不变)。这个人很固执,跑步时不会改变方向,只有在休息时才可能会改变方向。

问他能否在不离开平台的情况下完成跑步计划。

输入格式:

第一行一个整数T,表示测试数据的数目(1<=T<=10)

对于每组测试数据:

    第一行两个整数L(1<=L<=10000),n(1<=n<=100),表示平台范围为[0,L]以及跑步时间段的数目。

    接下来n行,每行两个整数si,ti(0<=si,ti<=1000000),表示某一跑步时间段为[si,ti]。保证任意两个时间段不会有重叠部分。

输出格式:

对于每一组数据,输出一个字符串。

如果可能完成,输出“possible”,否则输出“impossible”

样例输入:

样例1:
1
6 2
0 4
6 12

样例2:
1
6 3
0 5
6 8
9 14

样例输出:

样例1:
possible

样例2:
impossible

提示:

样例一: 只有一组数据,这个人可以在4这个位置出发。第一个跑步时间段,他可以向左跑4个单位长度,到达0。接着在0处休息两个单位时间。第二个跑步时间段,他可以向右跑6个单位长度,到达6。整个过程中他都没有离开平台。

时间限制: 1000ms
空间限制: 128MB