有m个人面向南方站成一排(m ≥1),每喊一次口号可以有n个人同时转身一次(1≤n≤m),问共需喊多少次口号所有人最终全部面向北方?
请编写一个函数,函数有两个参数,分别为m和n,函数返回值为最终需要的次数,若经过无穷大次仍然无法全部转向北方,则输出-1.
例1:
m = 6,n =5:
用0表示面向南方,1表示面向北方,如下:
0 0 0 0 0 0
0 1 1 1 1 1
1 1 0 0 0 0
0 0 0 1 1 1
1 1 1 1 0 0
0 0 0 0 0 1
1 1 1 1 1 1
返回6
例2:
m = 3,n = 2:
返回-1