训练指南第2版再版计划(内容可能变更)
[TOC]
- 有兴趣的朋友可以进行贡献,出版之后前言内会提到你的名字,但是不承诺任何物质回报。
. 贡献较大的同学有机会参与后续其它书籍的编写,参与就有可能有少许物质回报。
. 所有的贡献请发送到 [email protected]以及[email protected]。注明标题,并且给出真实姓名。
. 贡献的类型包含:
- 题目提供代码(尽量有详尽的注释以及良好的风格)
- 题解,要求逻辑清晰
- 试读,成文后召集
- 优秀代码风格样例:
void splay(Node* &o, int k) { // 找到序列的左数第k个元素并伸展到根结点
int d = o->cmp(k); // 看看第k个元素在整个树中的位置
if(d == 1) k -= o->ch[0]->s + 1; // 第k个元素在o的右子树中
if(d == -1) return; // 已经在根上了
Node* p = o->ch[d]; // 第k个元素所在的子树
// 第k个元素是在p的左or右子树→d2, 在这颗子树中的位置→k2
int d2 = p->cmp(k), k2 = (d2 == 0 ? k : k - p->ch[0]->s - 1);
if(d2 != -1) { // 不是子树的根,伸展到子树根
splay(p->ch[d2], k2); // 伸展到子树的子树的根
if(d == d2) rotate(o, d^1); // 一条直线,先把p转上去
else rotate(o->ch[d], d); // 不是一条直线
}
rotate(o, d^1); // 从子树根旋转到o
}
-
例题:
-
习题:
-
例题:
-
习题:
- 必做1: WF 2018 Problem J: Uncrossed Knight’s Tour
- Count a*b, ACM/ICPC Changchun 2015, LA7184✔
- Visible Lattice Points(Indian ICPC training camp)✔
- Mophues(Asia Regional Hangzhou Online 2013)✔
习题:
- NOI2016 循环之美 BZOJ 4652
- SPOJ GCDEX2 - GCD Extreme (hard)
- CodeChef COPRIME3: Coprime Triples
- LA6886 Golf Bot(SWERC 2014)
- WF2015 LA7159 J Tile Cutting
- 称糖果问题(Unequalled Consumption, NWERC 2005, LA3408)
- LA8389 Asia 2017 Nakhon Pathom B-Festival in City (FFT&XOR)
习题?:
- CodeChef POLYEVAL
- CodeChef COUNTARI(BZOJ-3509)
- BZOJ1919/CTSC 2010 - Optimize(d-分治&NTT)
例题
-
必做1: UVa Heap Manager (线段树+模拟)
-
例题: 线段树合并
-
习题:
例题:
- SPOJ MKTHNUM NEERC2004 Northern Subregion (主席树)
- Version Controlled IDE, ACM/ICPC Hatyai 2012,UVa12538 (可持久化Treap)
习题:
- 必做1: WC 2016. 鏖战表达式(交互题目, 可持久化Treap)
- 必做1: UVa12827 - Just another pachinko-like machine
- SPOJ – COT Count on a tree
- BZOJ2653 middle
- 可持久化链表 Persistent Linked List Ural 1992 CVS
- HDU2586 LCA模板
例题:
- SCOI2005-王室联邦,树分块模板
习题:
- 路径统计(点分治, POJ1741)
- Ironman Race in Treeland, Kuala Lumpur 2008, UVa12161 点分治
- 必做1: UOJ Round 2. 树上GCD
例题:
- SPOJ DQUERY,基础莫队
- 2120: 数颜色,莫队带修改
- [SPOJ COT2 - Count on a tree II] 树上莫队
习题:
- 必做1: WC2013 糖果公园 带修改树上莫队
- Lightning Energy Report, ACM/ICPC Jakarta 2010, UVa1674
- 题解编写
习题:
- 必做1: Sunlight on a Tree LA7309(树链剖分+凸包合并)
例题
- SDOI2011 消耗战 BZOJ2286
- 题解编写
习题:
- 必做 CodeChef BTREE. 经典的虚树题目
例题:
- 必做1: UVa12939 Keep Fit. 带修改莫队+KDTree 习题:
- 后缀数组-补充RadixSort内容介绍
例题
- 必做1: CTSC 2010. 珠宝商(字符串相关,后缀树,后缀自动机) 习题
- EC Final 2015(Suffixes and Palindromes) 差分约束,回文,后缀自动机
- HDU4513 吉哥系列故事——完美队形II √
- 题解
- 必做1: Asia - Yangon2016 LA7807 Tree Pendant.
- 必做1: ACM-ICPC Asia 2017 Nakhon Pathom泰国赛区-Problem K Optimal Binary Subtree
- The 2017 ACM-ICPC Asia Tsukuba Regional Contest D题几何
- 必做1: WF 2018 Problem G: Panda Preserve
例题:
- [CTSC2008]祭祀river 求最长反链:网络流例题❓
- 必做1: WF 2018 Problem E: Getting a Jump on Crime
- WC 2014. 紫荆花之恋 替罪羊树?
- 魔法森林
- Happy Painting, UVa11994 (LCT)
- 必做1: IOI 2011. Elephant (LCT) https://www.codechef.com/problems/ELPHANT
例题:
- BOI2007 摩基亚Mokia CDQW分治
- ZJOI2013 K大数查询 BZOJ3110 整体二分