摘要:
题意:统计区间内每个数字出现的次数 分析:前缀和差分,数位dp,从高到低考虑,有一种特殊情况是统计0出现的次数时,要考虑前导0 void solve(){ long long l, r; cin >> l >> r; vector<int> num; int digit; vector<vector 阅读全文
摘要:
关于LCA的倍增跟ST的倍增:一个是树上从当前深度往上倍增,倍增上限不超过当前深度,一个是数组中从左往右倍增,倍增上限不超过右边界。 不过在树中倍增要先处理出当前点的深度才能进行倍增,而数组中可以直接根据下标跟有边界的距离计算。 void solve(){ int n, m, root; cin > 阅读全文
摘要:
2次dfs solutions, 仅限边权为非负,或者没有边权(边权为1): void solve(){ int n; cin >> n; vector<vector<pair<int, int>>> al(n + 1); for (int i = 0; i < n - 1; ++i){ int u 阅读全文