摘要: NOIP 普及组2003 题解及经验总结 1. 麦森数 题目: 形如2P−12P−1的素数称为麦森数,这时P一定也是个素数。 但反过来不一定,即如果P是个素数,2P−12P−1不一定也是素数。 到1998年底,人们已找到了37个麦森数。 最大的一个是P=3021377,它有909526位。 麦森数有 阅读全文
posted @ 2020-03-12 19:19 MrMorrins 阅读(263) 评论(0) 推荐(0) 编辑
摘要: 例题1:最长上升子序列,每两个之间不能超过d; 思路: f[i]表示以i结尾的满足条件的子序列最大长度。 f[i]可以从值在[ai d,ai 1]范围内的位置转移过来。 相当于是区间最大值。 可以用线段树维护,a[i] d f[0] [s] [e_0]=1;e_0代表一条虚边,若是1 m的任意一点会 阅读全文
posted @ 2020-01-21 11:32 MrMorrins 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 并查集 并查集保持一组不相交的动态集合S={S1,S2,…,Sk}。 每个集合通过一个代表来识别。 代表就是集合中的某个成员。 哪一个成员被选做代表是无所谓的。 我们关心的是如果寻找某一动态集合的代表两次,并且在两次寻找之间不修改集合,两次得到的答案应该是相同的。 并查集的操作 初始化 Make S 阅读全文
posted @ 2020-01-19 22:07 MrMorrins 阅读(270) 评论(0) 推荐(0) 编辑
摘要: Vector 定义方式:vectora; 有时压入数字时会自动开原空间的两到三倍。 末尾压入容器:a.push_back(x); 在末尾弹出容器:a.pop_back(); 清空容器:a.clear(); 查询元素个数:a.size(); 首指针:a.begin(); 插入元素在sit位置:a.in 阅读全文
posted @ 2020-01-18 22:45 MrMorrins 阅读(159) 评论(0) 推荐(0) 编辑