摘要:
题不难。 A. Make All Equal 题意: 一个圆,上面有 \(n\) 个数,每次可以删去相邻的两个不同数中任意一个,求至少几次使得剩下的数都一样。 显然下界是出现次数最多的数且一定能取到,时间复杂度 \(O(n)\)。 提交记录 B. Generate Permutation 题意: 要 阅读全文
摘要:
EI 的博客 可以 \(O(n \sqrt n)\) 计算。 int p[M] = {0}, tmp[M] = {0};//分拆数 void init(int n) {//算出所有小于等于 n 的分拆数 int b = sqrt(n); p[0] = tmp[0] = 1; for (int i = 阅读全文