题意:给定n(2e5),m(2e5),求长度为n序列A的个数,其中是
的整数倍,且
不超过m
dp[n][m]表示最后一个元素为n,长度为m,元素互不相同,每个元素是前一个元素的整数倍(至少2倍)的序列个数,易知序列长度不会超过19
元素可以重复的情况等价于在不可重复的情况下乘上用隔板法把n个相同小球放入j个不同盒子且盒子非空的方案数,在上面方案数乘上即可
最终答案为
#include<bits/stdc++.h>
using namespace std;
using ll = long long;
const i