求大神给个思路(C语言)
Description在机房里,有一位人人都非常熟悉的学长——X神。X身边从来不缺学妹,更不缺学弟。王同学就是他的忠实小跟班。作为一个跟班,像开灯这种粗活就肯定要提前做好。
现在这个屋子有n个开关控制着n盏灯,但奇怪的是,每个开关对应的不是一盏灯,而是n-1盏灯,每次按下这个开关,其对应的n-1盏灯就会由亮变灭,或者由灭变亮。保证不会有两个开关控制同样的n-1盏灯。
现在王同学想在X神进来之前把灯全部开好,但是这些灯一开始的状态非常乱,王同学想知道最少需要按多少次开关才能使所有灯全部亮起。
Input
多组数据输入。
每组数据一行,两个数n, m 分别代表灯的数量,最开始时亮着的灯的数量(1 < m < n < 10000000000)
Output
每组数据输出一个数,即能使所有灯全部亮起的最少的按开关的次数,如果无法做到灯全部亮起,输出“Impossible”
Sample Input
4 2
Sample Output
2