cf1359 E. Modular Stability(数论)

题意:

给定 \(n,k\),构造数组 \(a[]\),满足

  1. \(1\le a_1 < a_2 < \cdots <a_k \le n\)

  2. 对任意非负整数 \(x\),无论怎么排列 \(a_i\)\(x\%a_1\%a_2\%\cdots \%a_k\) 的值都不变

求构造方案数。

\(1\le n, k, \le 5e5\)

题意:

(怎么总感觉之前做过一道这种连续取模的题?)

结论:一个数组符合条件,当且仅当数组中的每个数都是数组中最小数的倍数。

那么先选定这个最小数 \(d\),再选 \(k-1\)\(d\) 的倍数。答案是 \(\sum\limits_{d=1}^n C_{\lfloor n/d \rfloor - 1}^{k-1}\)

证明:

若每个数都是最小数 \(a_1\) 的倍数,则连续取模的结果永远是 \(x\%a_1\),符合题意。

反证,假设某个 \(a'\) 不是最小数 \(a_1\) 的倍数。取 \(x=a'\),若 \(a_i\) 从小到大排列则结果是 \(a_1\);但若把 \(a'\) 提到最前面,结果却是 \(0\),所以不行

posted @ 2022-03-16 20:21  Bellala  阅读(28)  评论(0)    收藏  举报