分数游戏
#描述#
游戏规则是这样的:先给你一个整数S和K个分数(编号为1到K),每一轮都需从编号为1的分数开始遍历这K个分数,直到找到一个分数能与当前的S相乘后的值为整数V,然后更新S的值为V并重新开始新的一轮,重复这样的循环直到某一轮中,所有的分数与S相乘后的值都不是整数,那么游戏就终止了。<br>
在玩游戏的过程中,我们会得到一系列S的值(包括初始的值),我们的任务是按出现顺序把它们列出来,但是不用全部都列出来,只需列出二进制形式里只有1个1的那些数。由于游戏可能会无终止的玩下去,所以我们只需列出前M个符合条件的数。
<h3>Inputs:</h3>
输入包含多组测试数据。<br>
针对每组测试数据,第一行给出3个整数M(1<=M<=50),S(1<=S<=1000),K(1<=K<=100)。<br>
接下去新的一行给出K个分数,每个分数都以先分子后分母的形式给出。分子和分母都是大于0小于1000的整数且互质。<br>
最后一组数据以三个0结束,不需处理这组数据。
#格式#
##输入格式##
##输出格式##
针对每组测试数据,输出前M个符合条件的数化成二进制形式时唯一的1的下标,最低位的下标为0。输入数据保证至少有M个符合条件的数,同时还保证在前1000000轮里肯定出现。
#样例1#
##样例输入1##
1 10 2
7 3 4 5
0 0 0
##样例输出1##
3
#限制#
2000ms
32768KB
#提示#
#来源#
z_y