• ACM第一阶段学习内容


    一、知识目录

    字符串处理 ................................................................. 3
    1、KMP 算法 ............................................................ 3
    2、扩展 KMP ............................................................ 6
    3、Manacher 最长回文子串 ................................................ 7
    4、AC 自动机 ........................................................... 8
    5、后缀数组 ........................................................... 10
    6、后缀自动机 ......................................................... 14
    数学 ..................................................................... 15
    1、素数 .............................................................. 15
    2、素数筛选和合数分解 .................................................. 18
    3、扩展欧几里得算法(求 ax+by=gcd 的解以及逆元素) ......................... 18
    4、求逆元............................................................. 19
    5、模线性方程组 ....................................................... 19
    6、随机素数测试和大数分解(POJ 1811)..................................... 20
    7、欧拉函数 ........................................................... 23
    8、高斯消元(浮点数) .................................................. 24
    9、FFT............................................................... 25
    10、高斯消元法求方程组的解 .............................................. 28
    11、 整数拆分 ......................................................... 33
    12、求 A^B 的约数之和对 MOD 取模 ......................................... 35
    13、莫比乌斯反演 ...................................................... 35
    14、Baby-Step Giant-Step ............................................ 38
    相关公式.............................................................. 38
    数据结构.................................................................. 39
    1、划分树............................................................. 39
    2、RMQ............................................................... 41
    3、树链剖分 ........................................................... 43
    4、伸展树(splay tree) ............................................... 48
    5、动态树............................................................. 53
    6、主席树............................................................. 58
    图论 ..................................................................... 68
    1、最短路............................................................. 68
    2、最小生成树 ......................................................... 72
    3、次小生成树 ......................................................... 73
    4、有向图的强连通分量 .................................................. 74
    5、图的割点、桥和双连通分支的基本概念..................................... 77
    6、割点与桥 ........................................................... 78
    7、边双连通分支 ....................................................... 81
    8、点双连通分支 ....................................................... 83
    9、最小树形图 ......................................................... 86
    10、二分图匹配 ........................................................ 88
    11、生成树计数 ........................................................ 91
    11、二分图多重匹配 ..................................................... 94
    12、KM 算法(二分图最大权匹配).......................................... 95
    13、最大流............................................................ 96
    14、最小费用最大流 ....................................................102
    15、2-SAT...........................................................103
    16、曼哈顿最小生成树 ..................................................107
    17、一般图匹配带花树 ..................................................110
    18、LCA.............................................................113
    计算几何.................................................................119
    1、基本函数 ..........................................................119
    2、凸包 .............................................................123
    3、平面最近点对(HDU 1007) ...........................................124
    4、旋转卡壳 ..........................................................126 

    5、半平面交 ..........................................................131 
    6、三点求圆心坐标(三角形外心) .........................................135 
    动态规划.................................................................136 
    1、最长上升子序列 O(nlogn) ............................................136 
    其他 ....................................................................136 
    1、高精度............................................................136 
    2、完全高精度 ........................................................138 
    3、strtok 和 sscanf 结合输入 ..........................................143 
    4、解决爆栈,手动加栈 .................................................143 
    5、STL..............................................................144 
    6、输入输出外挂 ......................................................145 
    7、莫队算法 ..........................................................146

    二、参考资料
    Summer 2017 Code Training 1

    模板:上海大学ACM模板-第3-24页

    字符串-参考资料】
    1、 从头到尾彻底理解KMP
    http://www.cnblogs.com/zhangtianq/p/5839909.html
    2、最长回文子串
    http://blog.csdn.net/kangroger/article/details/37742639
    3、AC自动机最详细的讲解,让你一次学会AC自动机
    http://blog.csdn.net/creatorx/article/details/71100840
    4、后缀数组
    http://www.cnblogs.com/shanchuan04/p/5324009.html
    http://blog.csdn.net/fp_hzq/article/details/8990932
    5、后缀自动机
    https://www.zhihu.com/question/34039162

    文件:2017CT1资料_SAM后缀自动机-陈立杰讲稿、2017CT1-柔性字符串匹配、2017CT1-algorithms on strings字符串算法大全。

    数学-参考资料】
    1、素数有关算法
    http://blog.csdn.net/snow_me/article/details/52588819
    2、扩展欧几里德算法
    http://blog.csdn.net/zhjchengfeng5/article/details/7786595
    3、逆元
    http://blog.csdn.net/acdreamers/article/details/8220787
    4、Miller_rabin算法
    http://blog.csdn.net/maxichu/article/details/45458569
    5、欧拉函数
    http://blog.csdn.net/sentimental_dog/article/details/52002608
    6、模线性方程组
    http://blog.csdn.net/qq_21120027/article/details/51340218

    Summer 2017 Code Training 2

    模板:上海大学ACM模板-第25-42页

    【数学-参考资料(续)】
    1、高斯消元法
    http://blog.csdn.net/duanxian0621/article/details/7408887

    2、FFT(快速傅氏变换)
    http://www.gatevin.moe/acm/fft%E7%AE%97%E6%B3%95%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0/

    3、莫比乌斯反演
    http://blog.csdn.net/acdreamers/article/details/8542292

    4、离散对数(Baby Step Giant Step)
    http://blog.csdn.net/acdreamers/article/details/8579511

    数据结构-参考资料】
    1、划分树
    http://blog.csdn.net/shiqi_614/article/details/8041390

    2、主席树
    http://blog.csdn.net/sprintfwater/article/details/9162041

    3、区间最值查询(RMQ)
    http://blog.csdn.net/liang5630/article/details/7917702
    http://blog.csdn.net/metalseed/article/details/7953260

    Summer 2017 Code Training 3
    模板:上海大学ACM模板-第43-74页

    【数据结构-参考资料(续)】
    1、树链剖分原理
    http://blog.csdn.net/acdreamers/article/details/10591443

    2、树状数组
    http://blog.csdn.net/ljd4305/article/details/10101535

    3、线段树
    http://www.cnblogs.com/TenosDoIt/p/3453089.html

    4、Splay Tree(伸展树)
    http://blog.csdn.net/niuox/article/details/8018280

    5、动态树
    http://blog.csdn.net/d891320478/article/details/9181385

    6、主席树
    http://blog.csdn.net/sprintfwater/article/details/9162041

    图论-参考资料】
    1、最短路:Dijkstra算法
    http://www.cnblogs.com/skywang12345/p/3711512.html

    2、最短路:Bellman-Ford算法
    http://blog.csdn.net/niushuai666/article/details/6791765

    3、最短路:SPFA算法
    http://www.layz.net/LAOJ/suanfa/s9-4.html

    4、最小生成树:Kruskal算法
    http://blog.csdn.net/luomingjun12315/article/details/47700237

    5、最小生成树:Prim算法
    http://blog.csdn.net/yeruby/article/details/38615045

    6、次小生成树
    http://yzmduncan.iteye.com/blog/1018358

    Summer 2017 Code Training 4
    模板:上海大学ACM模板-第74-96页

    【图论-参考资料(续)】
    1、有向图的强连通分量:Tarjan算法
    http://www.cnblogs.com/uncle-lu/p/5876729.html

    2、有向图的强连通分量:Kosaraju算法
    http://www.cnblogs.com/nullzx/p/6437926.html

    3、最小树形图
    http://www.cnblogs.com/Ash-ly/p/5536796.html

    4、二分图
    http://dsqiu.iteye.com/blog/1689505
    http://www.renfei.org/blog/bipartite-matching.html

    5、二分图最大匹配:匈牙利算法
    http://blog.csdn.net/dark_scope/article/details/8880547
    http://www.cnblogs.com/pony1993/archive/2012/07/25/2607738.html

    6、二分图最大匹配:Hopcroft-Karp算法
    http://blog.csdn.net/wall_f/article/details/8248373

    7、生成树计数:Matrix-Tree定理
    http://blog.csdn.net/longshuai0821/article/details/7764267

    8、二分图多重匹配问题
    http://blog.csdn.net/u014427196/article/details/48319639

    9、二分图最大权匹配:Kuhn-Munkres算法
    http://www.cnblogs.com/kuangbin/archive/2012/08/19/2646535.html

    Summer 2017 Code Training 5
    模板:上海大学ACM模板-第97-121页

    【图论-参考资料(续)】
    1、最大流问题
    http://blog.csdn.net/yiqingnian28/article/details/23388633
    http://www.cnblogs.com/kuangbin/archive/2011/07/26/2117636.html

    2、最小费用最大流
    http://blog.csdn.net/stillxjy/article/details/52047189

    3、2-SAT
    http://blog.csdn.net/jarjingx/article/details/8521690

    4、曼哈顿距离最小生成树
    http://blog.csdn.net/acm_cxlove/article/details/8890003

    5、莫队算法
    http://blog.csdn.net/hzj1054689699/article/details/51866615

    6、一般图匹配问题:带花树
    http://blog.csdn.net/u014261987/article/details/41350003
    http://blog.csdn.net/jackyguo1992/article/details/11271497

    7、LCA(最近公共祖先)
    http://blog.csdn.net/liangzhaoyang1/article/details/52549822
    http://www.cnblogs.com/wuminye/p/3527176.html
    http://blog.csdn.net/Janis_z/article/details/52937631?locationNum=6&fps=1

    计算几何-参考资料】
    8、计算几何
    http://www.cnblogs.com/kuangbin/category/410309.html
    文件:HIT-ACM计算几何模板

    Summer 2017 Code Training 6
    模板:上海大学ACM模板-第122-152页

    【计算几何-参考资料】
    1、计算几何
    http://www.cnblogs.com/kuangbin/category/410309.html
    HIT-ACM计算几何模板

    其他-参考资料】
    2、动态规划
    http://blog.csdn.net/baidu_28312631/article/details/47418773
    http://blog.csdn.net/scythe666/article/details/50921628

    3、莫队算法
    http://blog.csdn.net/hnshhslsh/article/details/50582926

    三、题解链接

    Summer 2017 Code Training 1 

    A - Cow Patterns
    来源:POJ – 3167
    知识点:扩展KMP等
    http://www.cnblogs.com/zjh10/articles/2105716.html
    http://blog.csdn.net/tmeteorj/article/details/8693366
    http://www.cppblog.com/zxb/archive/2010/10/06/128782.aspx?opt=admin

    B - Best Sequence
    来源:POJ – 1699
    知识点:扩展KMP+DFS等
    http://blog.csdn.net/zzzz40/article/details/39186109

    C – Palindrome
    来源:POJ – 3974
    知识点:Manacher算法等
    http://blog.csdn.net/u010885899/article/details/45366633
    http://blog.csdn.net/geniusluzh/article/details/8639759

    D - Keywords Search
    来源:HDU – 2222
    知识点:AC自动机等
    http://blog.csdn.net/hnust_xiehonghao/article/details/9130539

    E - Longest Common Substring
    来源:HDU – 1403
    知识点:后缀数组DA算法(倍增算法)等
    http://blog.csdn.net/xinag578/article/details/50164599

    F - Power Strings
    来源:POJ – 2406
    知识点:后缀数组DC3算法等
    http://blog.csdn.net/libin56842/article/details/46310425

    G – String
    来源:CodeForces - 123D
    知识点:后缀自动机(SAM)等
    http://blog.csdn.net/dyx404514/article/details/8713542
    http://www.hankcs.com/program/algorithm/codeforces-123d-string.html

    H - Prime Distance
    来源:POJ – 2689
    知识点:大区间素数筛选等
    http://www.cnblogs.com/kuangbin/archive/2013/05/20/3089840.html

    I - The Factor
    来源:HDU – 5428
    知识点:素数筛选合数分解等
    http://www.bubuko.com/infodetail-1079772.html
    http://www.cnblogs.com/Apro/p/4784808.html

    J - A/B
    来源:HDU - 1576
    知识点:扩展欧几里得算法等
    http://blog.csdn.net/ljd4305/article/details/26057385
    http://blog.csdn.net/lyc1635566ty/article/details/50611246

    K - X问题
    来源:HDU - 1573
    知识点:解一元线性同余方程组、中国剩余定理等
    http://www.cnblogs.com/zhangmingcheng/p/4238407.html
    http://blog.csdn.net/a601025382s/article/details/10296577

    L - Prime Test
    来源:POJ – 1811
    知识点:大素数判断和素因子分解等
    http://www.cnblogs.com/kuangbin/archive/2012/08/19/2646404.html

    M - Farey Sequence
    来源:POJ – 2478
    知识点:欧拉函数等
    http://blog.csdn.net/aaaaacmer/article/details/47272037

    Summer 2017 Code Training 2 

    A - Kind of a Blur
    来源:HDU - 3359
    知识点:高斯消元法等
    http://blog.csdn.net/qwb492859377/article/details/47013321

    B - A * B Problem Plus
    来源:HDU – 1402
    知识点:FFT、大整数乘法等
    http://blog.csdn.net/sdj222555/article/details/9786527

    C - 3-idiots
    来源:HDU – 4609
    知识点:FFT计数等
    http://blog.csdn.net/qq_33184171/article/details/54427994

    D - Painter's Problem
    来源:POJ – 1681
    知识点:高斯消元法(一类开关问题,对2取模的01方程组)等
    http://www.cnblogs.com/kuangbin/archive/2012/08/31/2665913.html

    E - Widget Factory
    来源:POJ – 2947
    知识点:高斯消元法(解同余方程组)等
    http://www.cnblogs.com/gj-Acit/p/3903085.html

    F - Partition
    来源:HDU – 4651
    知识点:整数拆分等
    http://www.cnblogs.com/zhsl/archive/2013/08/07/3242268.html

    G - Integer Partition
    来源:HDU – 4658
    知识点:整数划分、生成函数等
    http://blog.csdn.net/a601025382s/article/details/10299367

    H - Sumdiv
    来源:POJ – 1845
    知识点:求A^B的约数之和对MOD取模等
    http://www.cnblogs.com/kuangbin/archive/2012/08/10/2631225.html

    I - GCD
    来源:HDU – 1695
    知识点:莫比乌斯反演等
    http://blog.csdn.net/lixuepeng_001/article/details/50577932

    J - Discrete Logging
    来源:POJ – 2417
    知识点:离散对数(Baby Step Giant Step)等
    http://www.cnblogs.com/kuangbin/archive/2013/08/24/3278852.html

    K - K-th Number
    来源:POJ – 2104
    知识点:经典划分树、主席树等
    http://blog.csdn.net/pure_lady/article/details/46806833
    http://www.cnblogs.com/oyking/p/3230296.html

    L - Sliding Window
    来源:POJ – 2823
    知识点:单调队列、线段树、一维RMQ等
    http://blog.csdn.net/u013351484/article/details/45112271

    M – Cornfields
    来源:POJ – 2019
    知识点:二维RMQ等
    http://www.cnblogs.com/kuangbin/p/3227420.html

    Summer 2017 Code Training 3

    A - Aragorn's Story
    来源: HDU – 3966
    知识点:树链剖分+树状数组等
    http://www.cnblogs.com/kuangbin/archive/2013/08/14/3258736.html

    B - Query on a tree
    来源: SPOJ – QTREE
    知识点:树链剖分+线段树等
    http://blog.csdn.net/niuox/article/details/8145842

    C - SuperMemo
    来源:POJ – 3580
    知识点:Splay Tree(伸展树)等
    http://blog.csdn.net/jasonzhu8/article/details/5747811

    D - Query on The Trees
    来源:HDU – 4010
    知识点:动态树等
    http://www.cnblogs.com/kuangbin/archive/2013/09/04/3300251.html

    E - D-query
    来源:SPOJ - DQUERY
    知识点:主席树-区间不同数的个数 等
    http://blog.csdn.net/aozil_yang/article/details/65448883

    F - K-th Number
    来源:POJ – 2104
    知识点:主席树-静态区间第k大 等
    http://www.cnblogs.com/kuangbin/archive/2013/09/05/3302731.html

    G - Count on a tree
    来源:SPOJ – COT
    知识点:LCA+主席树等
    http://blog.csdn.net/acm_cxlove/article/details/8564167
    http://www.cnblogs.com/arbitrary/archive/2013/10/09/3360104.html


    H - Dynamic Rankings
    来源: ZOJ - 2112
    知识点:树状数组+主席树-动态第k大等
    http://www.cnblogs.com/kuangbin/p/3308118.html

    I - MPI Maelstrom
    来源:POJ – 1502
    知识点:Dijkstra算法等
    http://blog.csdn.net/u013446688/article/details/42708487

    J - Invitation Cards
    来源:POJ – 1511
    知识点:优先队列优化的Dijkstra算法等
    http://www.cnblogs.com/kuangbin/p/3140958.html

    K - Currency Exchange
    来源:POJ – 1860
    知识点:Bellman-Ford算法等
    http://www.cnblogs.com/kuangbin/archive/2012/08/17/2644807.html

    L - Wormholes
    来源:POJ - 3259
    知识点:SPFA等
    http://blog.csdn.net/murmured/article/details/18669909

    M - Highways
    来源:POJ – 2485
    知识点:最小生成树等
    http://blog.csdn.net/mikasa3/article/details/51559191
    http://blog.csdn.net/fanesemyk/article/details/51137466?locationNum=1&fps=1

    N - Design Tutorial: Inverse the Problem
    来源:CodeForces - 472D
    知识点:最小生成树等
    http://blog.csdn.net/u010660276/article/details/39901287

    O - Qin Shi Huang's National Road System
    来源:HDU - 4081
    知识点:次小生成树等
    http://blog.csdn.net/shuangde800/article/details/7982106

    Summer 2017 Code Training 4

    A - Popular Cows
    来源:POJ – 2186
    知识点:Tarjan算法等
    http://www.dontcry-tat.com/2017/04/26/poj-2186-popular-cows/

    B - 迷宫城堡
    来源:HDU – 1269
    知识点:Kosaraju算法等
    http://blog.csdn.net/qq7366020/article/details/12943345

    C - Critical Links
    来源:UVA – 796
    知识点:无向图求桥等
    http://www.cnblogs.com/chenchengxun/p/4718717.html

    D - Electricity
    来源:POJ – 2117
    知识点:无向图求割点
    http://blog.csdn.net/liwen_7/article/details/7919220

    E - Redundant Paths
    来源:POJ – 3177
    知识点:无向图的双连通问题等
    http://mojijs.com/2014/11/165169/index.html

    F - Knights of the Round Table
    来源:POJ – 2942
    知识点:点的双连通分量等
    http://www.cnblogs.com/wangfang20/p/3201502.html

    G - Command Network
    来源:POJ – 3164
    知识点:最小树形图等
    http://blog.csdn.net/shuangde800/article/details/8039359

    H - The Perfect Stall
    来源:POJ – 1274
    知识点:二分图最大匹配:匈牙利算法
    http://blog.csdn.net/u013487051/article/details/37656979

    I - Asteroids
    来源:POJ – 3041
    知识点:二分图最大匹配:匈牙利算法
    http://blog.csdn.net/yeruby/article/details/39315713

    J - COURSES
    来源:POJ – 1469
    知识点:二分图最大匹配:Hopcroft-Karp算法
    http://blog.csdn.net/u011466175/article/details/23709885

    K - Lightning
    来源:HDU – 4305
    知识点:生成树计数:Matrix-Tree定理
    http://blog.csdn.net/julyana_lin/article/details/8067024

    L - Highways
    来源:SPOJ – HIGH
    知识点:生成树计数
    http://blog.csdn.net/gatevin/article/details/48051879

    M - Alice's Chance
    来源:POJ – 1698
    知识点:二分图多重匹配
    http://blog.csdn.net/l123012013048/article/details/47295503

    N - 奔小康赚大钱
    来源:HDU – 2255
    知识点:二分图最大权匹配、KM算法等
    http://blog.csdn.net/sr_19930829/article/details/40650359


    Summer 2017 Code Training 6

    A - Card
    来源:HDU - 4350
    知识点:模拟等
    http://blog.csdn.net/wconvey/article/details/7848235

    B - A Round Peg in a Ground Hole
    来源:POJ - 1584
    知识点:判断凸多边形、判断点在多边形内、判断圆在多边形内等
    http://www.cnblogs.com/liuxin13/p/4799667.html

    C - Cupid's Arrow
    来源:HDU - 1756
    知识点:判断点在多边形内外等
    http://blog.csdn.net/lttree/article/details/24301607

    D - Shape of HDU
    来源:HDU - 2108
    知识点:判断凸多边形等
    http://blog.csdn.net/lttree/article/details/24241987

    E - Wall
    来源:HDU - 1348
    知识点:求凸包周长等
    http://blog.csdn.net/W1413882708/article/details/52191385

    F - Quoit Design
    来源:HDU - 1007
    知识点:查找平面最近点对等
    http://blog.csdn.net/sun1956/article/details/8294048

    G - Beauty Contest
    来源:POJ - 2187
    知识点:求解平面最远点对等
    http://blog.csdn.net/crazy_ac/article/details/10082403

    H - Triangle
    来源:ZOJ - 2419
    知识点:求解平面点集最大三角形等
    http://blog.csdn.net/zxy_snow/article/details/6595123

    I - The widest road
    来源:HDU - 2823
    知识点:求解两凸包最小距离等
    http://blog.csdn.net/clover_hxy/article/details/54022026

    J - Art Gallery
    来源:ZOJ- 1369
    知识点:半平面交等
    http://blog.csdn.net/l04205613/article/details/6626844

    K - Kindergarten Electiond
    来源:ZOJ-3715
    知识点:枚举、贪心等
    http://blog.csdn.net/zy691357966/article/details/44853449

    L - Attack on Titans
    来源:ZOJ-3747
    知识点:递推等
    http://blog.csdn.net/summer__show_/article/details/70243332

    M - Alignment
    来源:HDU - 1950
    知识点:最长上升子序列等
    http://www.cnblogs.com/blueprintf/p/5773393.html
    http://blog.csdn.net/wall_f/article/details/8295812

    N - Game of Connections
    来源:HDU - 1134
    知识点:卡特兰数等
    http://blog.csdn.net/u013509299/article/details/19758565

    O - Group
    来源:HDU 4638
    知识点:莫队算法、离线线段树等
    http://blog.csdn.net/xlzhang223/article/details/51439180

    P - Count on a tree II
    来源:SPOJ - COT2
    知识点:树上的莫队算法、树上区间查询等
    http://blog.csdn.net/htt_h/article/details/47729479

  • 相关阅读:
    Scalaz(3)- 基础篇:函数概括化-Generalizing Functions
    Scalaz(2)- 基础篇:随意多态-typeclass, ad-hoc polymorphism
    Scalaz(1)- 基础篇:隐式转换解析策略-Implicit resolution
    Scalaz(0)
    泛函编程(38)-泛函Stream IO:IO Process in action
    泛函编程(37)-泛函Stream IO:通用的IO处理过程-Free Process
    泛函编程(36)-泛函Stream IO:IO数据源-IO Source & Sink
    泛函编程(35)-泛函Stream IO:IO处理过程-IO Process
    javascript基础
    jsp联合javascript操作html
  • 原文地址:https://www.cnblogs.com/xzxl/p/7253061.html
Copyright © 2020-2023  润新知