所以其实解是唯一的……
所以字典序什么的根本不存在……
迷惑行为……
令 ai=[i∈S],则 f 的生成函数 F(x)=∞∑i=0f(i)xi=n∏i=1(11−xi)ai
两边取 ln,得 lnF(x)=−n∑i=1ailn(1−xi)
对右边泰勒展开,得 lnF(x)=n∑i=1ai∞∑j=1xijj
根据某些莫反套路,换元,令 T=ij,得 lnF(x)=∞∑T=1xTT∑d|Tadd
听说要莫反,然而其实直接枚举倍数减掉贡献就行了。
然后就能求出 ai 了。
然后这题就切了。
代码:
1 |
|