直接模拟约瑟夫环是N^2,况且这题每次移动的距离和方向都是不确定的,只能模拟,如果加快查找和移动的话,可以提高速度,果断用线段树维护当前位置前面有多少个人。
至于反素数指的是求一个小于等于N的数字,使得其因子个数在1-N中是最大的。这个利用一个必要条件暴力搜索即可。
其实就是利用下面这2个性质搜索的。 性质一:一个反素数的质因子必然是从2开始连续的质数。性质二:p=2^t13^t25^t3*7^t4…..必然t1>=t2>=t3>=….。
代码如下:</div>
1 | #include <stdio.h> |