[hzxjhs模拟2(T1,T3)][欧拉函数][dp]
T1【解题思路】
一个人的步长为ai,那么他所走过的格子一定是gcd(a[i],n)的倍数(如果不信请画一画),然后许多人的步长肯定会有重复的,所以为了防止重复,我们可以这样想。
枚举n的约数,如果有一个人的步长(这里我们把他当作步长与n的gcd),是这个约数d的倍数,那么这个人所走过的格子数为eluer_phi(n/d),也就是gcd(i,n)==d的个数,,为什么?
假设n=12,
ai
原创
2016-10-31 21:23:40 ·
271 阅读 ·
0 评论