这部分重在记住方法和公式,把每种组合数的意义和公式完完全全理解和掌握,都复习了很多次每次都要看别人的公式才会推。一定要做到自己能够熟练的推出来,组合意义也要非常清楚,这样做题的时候才能知道该怎么应用
这里把做过的好题整理下来
杜教筛
【BZOJ3512】DZY Loves Math IV(杜教筛): 这道题告诉我,不止是直接推反演式子,而是要根据数据范围找递推关系。
遇见phi(n)的问题要考虑phi的性质
p h i [ i ∗ j ] = p h i [ i ] ∗ p h i [ j ] ∗ g c d ( i , j ) p h i [ g c d ( i , j ) ] phi[i * j] = \frac{phi[i] * phi[j] * gcd(i,j)} {phi[gcd(i,j)]}\ phi[i∗j]=phi[gcd(i,j)]phi[i]∗phi[j]∗gcd(i,j) 但是不等于 p h i [ i g c d ( i , j ) ] ∗ p h i [ j ∗ g c d ( i ∗ j ) ] phi[\frac{i} {gcd(i,j)}]\ * phi[j *gcd(i *j)] phi[gcd(i,j)i] ∗phi[j∗gcd(i∗j)]
经常用到phi的定义来推式子和化简