数学方向
计数
- 本质不同子序列,枚举每个子序列长度 \(i\) 以及首次出现结尾位置 \(j\),后面的位置任意选,这 \(i\) 个位置任意选,为保证首次出现,其他位置上不能出现其右侧第一个子序列上元素,选择方案少一个。
例题:CodeForces-660E Different Subsets For All Tuples *2300
字符串方向
- 字典序考虑转化成一个前缀一致,后一位不同。计算方案枚举这个不同的这一位,求字典序更大的最小或字典序更小的最大考虑先匹配。
例题:CodeForces-1037H Security *3200。