第1章 编程技巧与C++11语法特性介绍 1
1.1 编程技巧 1
1.1.1 排序性能问题 1
1.1.2 整数输入 3
1.1.3 循环宏定义 3
1.1.4 STL容器内容调试输出 3
1.1.5 二维几何运算类 4
1.1.6 内存池 5
1.1.7 泛型参数的使用 5
1.1.8 位运算操作封装 6
1.1.9 编译脚本 7
1.2 C++11语言特性介绍 7
1.2.1 类型推导(auto) 8
1.2.2 空指针值(nullptr) 8
1.2.3 容器的for循环遍历 8
1.2.4 匿名函数(Lambda) 9
1.2.5 统一的初始化语法 10
1.2.6 哈希容器 11
第2章 《算法竞赛入门经典(第2版)》习题选解 13
2.1 数组和字符串 13
2.2 函数和递归 26
2.3 C++与STL入门 37
2.4 数据结构基础 76
2.5 暴力求解法 108
2.6 高效算法设计 139
2.7 动态规划初步 166
2.8 数学概念与方法 190
2.9 图论模型与算法 214
2.10 高级专题 237
第3章 比赛真题分类选解 248
3.1 搜索 248
3.2 模拟 257
3.3 动态规划 319
3.4 组合递推 324
3.5 图论 331
3.6 正则表达式 333
第4章 比赛真题选译 341
ACM/ICPC North America-Greater NY 341
ACM/ICPC Africa/Middle East-Arab 342
ACM/ICPC North America-Mid-Atlantic USA 344
ACM/ICPC North America-Rocky Mountain 345
ACM/ICPC North America-East Central NA 347
ACM/ICPC North America-Mid-Central USA 363
ACM/ICPC Latin America 364
ACM/ICPC SWERC(Southwestern Europe Regionals) 367
ACM/ICPC Europe- Central 372
CM/ICPC Europe-Northwestern 372
ACM/ICPC South Pacific 373
ACM/ICPC Asia-Tokyo(东京赛区) 373
ACM/ICPC Asia-Aizu(爱知赛区) 375
ACM/ICPC Asia - Fukuoka(福冈赛区) 375
ACM/ICPC Asia-Tehran(德黑兰) 376
ACM/ICPC Asia- Daejeon(韩国大田) 378
ACM/ICPC Asia-Harbin(哈尔滨赛区) 381
ACM/ICPC Asia-Changchun(长春赛区) 381
ACM/ICPC Asia-Shenyang(沈阳赛区) 382
ACM/ICPC Asia-Dalian(大连赛区)最后的谜题(The Last Puzzle, Asia-Dalian 2011,LA5695) 386
ACM/ICPC Asia-Tianjin(天津赛区) 388
ACM/ICPC Asia-Changsha(长沙赛区) 389
ACM/ICPC Asia-Nanjing(南京赛区) 389
ACM/ICPC Asia-Guangzhou(广州赛区) 391
ACM/ICPC Asia-Shanghai(上海赛区) 392
ACM/ICPC Asia-Chengdu(成都赛区) 393
ACM/ICPC Asia-Hangzhou(杭州赛区) 396
ACM/ICPC Asia-Jinhua(金华赛区) 396
ACM/ICPC Asia-Taichung(台中赛区) 398
ACM/ICPC Asia-Kaohsiung(高雄赛区) 398
ACM/ICPC Asia-Anritapuri(印度Amritapuri) 400
ACM/ICPC Asia-Hatyai(泰国合艾) 405
ACM/ICPC Asia-Bangkok(泰国曼谷) 407
ACM/ICPC Asia-Phuket(普吉岛赛区) 409
ACM/ICPC World Finals 410
CCPC(中国大学生程序设计竞赛) 412
第5章 比赛难题选译 415
ACM/ICPC Europe-Central 415
ACM/ICPC Europe-Northeastern 416
ACM/ICPC Asia - Taichung(台中) 420
ACM/ICPC Asia-Daejeon 422
ACM/ICPC Asia-Shanghai(上海) 422
ACM/ICPC Asia-Dhaka(达卡) 423
ACM/ICPC Asia-Mudanjiang(牡丹江) 424
ACM/ICPC Asia-Tehran(德黑兰) 427
ACM/ICPC Asia-Xian(西安) 427
ACM/ICPC Asia-Anshan 427
ACM/ICPC Asia-Beijing(北京) 429
ACM/ICPC Asia-Guangzhou(广州) 431
ACM/ICPC Asia-Tokyo(东京) 432
ACM/ICPC Asia-Bangkok(曼谷) 433