ACM训练指南

合集下载

ACM入门训练指南

ACM入门训练指南

ACM入门训练指南目标读者:想要在ACM/ICPC里进行发展,并通过SDUTOJ进行训练的初学者。

使用语言:只要会一门程序设计语言,就可以进行ACM训练了。

通过训练,可以更好地掌握语言使用能力、程序和算法设计能力。

一般通用语言如C、C++和JAVA都可以,它们有各自的优势和缺点:1.C语言设计算法效率比较高,但输入输出的格式控制比较麻烦,而ACM 对程序进行评测时对输入输出的格式要求比较高,使用C务必要熟练掌握输入输出方法。

2.C++封装了输入输出流,方便输入输出操作,减少出错的可能性;C++提供了非常强大的标准模版库(STL),使得很多在C上实现起来比较麻烦的代码,在C++上却非常方便。

3.JAVA在大型工程和安全方面有比较独特的优势,但在ACM里面却不是一种优秀的语言,因为JAVA的执行效率要比C、C++慢很多,而ACM的题目都对程序运行时间有限制,如果题目限时比较紧的话,就不适合用JAVA,然而JAVA却提供了很方便的高精度运算(大整数运算)。

建议刚学完C就用纯C来训练,在训练过程中可以学习C++,有时间再把STL 好好学学。

输入输出:初次接触ACM训练时经常会遇到的问题,就是输入和输出问题。

如果对语言的输入输出问题不是很熟悉的话,一定要先重点研究一下,特别在输入和输出时不能有冗余信息,因为学习语言时可能习惯了使用提示信息来提高程序的交互性,但ACM不需要任何交互性。

不严格按照题目要求进行输入输出的程序是无法通过系统测试的。

在线评测系统:在线评测系统,英文叫Online Judge(简称OJ),是开放的程序自动评判系统。

只要能上网,注册并登录系统后,就可以选择题目,编写程序,提交程序代码,然后由系统自动进行编译和执行,并通过系统预设测试数据来检验程序代码的正确性。

通过使用OJ训练,可以提高编程和算法设计能力,随着训练的深入,可以参加在评测系统上举行的ACM-ICPC程序设计竞赛。

很多学校都有自己的在线评测系统,里面提供了很多题目给平时学习训练用。

ACM训练计划初步设想

ACM训练计划初步设想
g,其余时间复习自己的知识点,平时多看书。
2,对于活动的一些建议。
a,对于英语题目,强烈要求不要直接用翻译器,自己慢慢来。平时也可收集一些好的单词。
b,在刷题过程中,以训练自己的思维为主,少看代码,以思路为主,代码自己实现为好。
c,在刷题过程中,有些模板一定要收集要,而且要理解含义,灵活运用,而且要打印出来。
1,先刷题,后总结。
如,后写代码。
c,是好题,将解题报告写于自己blog上,注重质量,把大的问题划分在小问题。
d,刷题总结过程中,以表达自己的思路为主。越有清晰,越有条理性越好。
e,刷题分类先不固定。可能一次刷题会涉及到多种类型。
f,刷题时间为上班时间。

acm培训计划

acm培训计划

acm培训计划导言ACM (Association for Computing Machinery) 是一个国际性的计算机学会,旨在为计算机专业人士提供交流学习和培训的平台。

ACM 培训计划旨在帮助学生提升他们的算法和编程能力,从而更好地参与 ACM 竞赛。

本培训计划将围绕算法与数据结构、编程语言、数学及竞赛技巧展开,以帮助学生提升专业知识、提高团队合作能力和竞赛技能。

一、培训目标1. 提升学生算法和数据结构基础知识,使其能够灵活运用于解决实际问题。

2. 培养学生对编程语言的深刻理解和应用能力。

3. 加强学生的数学基础,提高解决问题的抽象能力。

4. 提高学生的 ACM 竞赛技巧,培养解决问题的思考和团队合作能力。

二、培训内容1. 算法与数据结构1.1. 基本算法:递归、分治、贪心、动态规划1.2. 基本数据结构:栈、队列、链表、树、图1.3. 高级算法:最短路径、最小生成树、网络流、字符串算法1.4. 算法分析与设计:时间复杂度、空间复杂度和算法优化2. 编程语言2.1. C/C++/Java/Python 等主流编程语言的基本语法和特性2.2. 编程范例分析和练习2.3. 算法实现与调试技巧3. 数学基础3.1. 离散数学基础知识3.2. 数论、组合数学和图论基础3.3. 动态规划数学建模4. ACM 竞赛技巧4.1. ACM 竞赛规则和常见题型分析4.2. 模拟训练和解题技巧分享4.3. 队伍协作与策略分享三、培训方式1. 理论授课1.1. 定期组织专家授课,系统讲解培训内容,由资深ACM 竞赛选手分享解题技巧和经验。

1.2. 组织学习交流会,鼓励学生积极提问和讨论。

2. 实践训练2.1. 组织编程实践训练,引导学生独立完成算法实现和调试。

2.2. 选派导师进行一对一指导,帮助学生解决练习中遇到的难点问题。

3. 竞赛准备3.1. 组织模拟 ACM 竞赛,帮助学生提前适应竞赛环境和节奏。

3.2. 参与区域赛和国际赛前的模拟训练,为学生提供更加真实的竞赛体验。

ACM培训计划

ACM培训计划

ACM培训计划书制作人:xxx2008/10/21一、什么是ACMACM/ICPC ( ACM International Collegiate Programming Contest)国际大学生程序设计竞,ACM/ICPC 是由国际计算机界历史悠久、颇具权威性的组织ACM (Association for Computing Machinery ,美国计算机协会) 主办的,世界上公认的规模最大、水平最高的国际大学生程序设计竞赛,其目的旨在使大学生运用计算机来充分展示自己分析问题和解决问题的能力。

该项竞赛从1970 年举办至今已历31 届,一直受到国际各知名大学的重视,并受到全世界各著名计算机公司的高度关注,在过去十几年中,APPLE 、AT&T 、MICROSOFT 和IBM 等世界著名信息企业分别担任了竞赛的赞助商。

可以说,ACM 国际大学生程序设计竞赛已成为世界各国大学生最具影响力的国际级计算机类的赛事,是广大爱好计算机编程的大学生展示才华的舞台,是著名大学计算机教育成果的直接体现,是信息企业与世界顶尖计算机人才对话的最好机会。

该项竞赛分区域预赛和国际决赛两个阶段进行,各预赛区第一名自动获得参加世界决赛的资格,世界决赛安排在每年的 3 ~ 4 月举行,而区域预赛安排在上一年的9 ~12 月在各大洲举行。

ACM/ICPC 的区域预赛是规模很大、范围很广的赛事。

仅在2003 年参加区域预赛的队伍就有来自75 个国家(地区),1411 所大学的3150 支代表队,他们分别在127 个赛场中进行比赛,以争夺全球总决赛的73 个名额,其激烈程度可想而知。

2004 年第29 届ACM/ICPC 亚洲赛区预赛共设了北京、上海、台北、高雄、汉城、德黑兰、爱媛(日本)、达卡(孟加拉国)、马尼拉、坎普尔(印度)等10 个赛站,来自亚洲各国知名高校的各个代表队进行了激烈的角逐。

中国内地从1996 年开始参加ACM/ICPC 亚洲区预赛,至今已历九届。

算法竞赛入门经典 训练指南 第三章

算法竞赛入门经典 训练指南 第三章

第三章:数据结构在算法竞赛中,数据结构是一个非常重要的知识点,它在解决问题中起着至关重要的作用。

数据结构指的是一组数据的组织方式和管理方式,能够高效地进行数据的存储和检索。

在算法竞赛中,熟练掌握各种数据结构,并结合实际问题灵活运用,对于解决复杂的问题至关重要。

1. 数组数组是最基本的数据结构之一。

它在内存中以连续的方式存储数据,可以通过下标随机访问数组中的元素。

在算法竞赛中,数组的使用非常广泛,例如在搜索、排序和动态规划等算法中都会用到数组。

数组也有其局限性,比如插入和删除操作比较耗时。

在使用数组时需要根据具体问题进行评估。

2. 链表链表是另一种常见的数据结构,它由节点组成,每个节点包含数据和指向下一个节点的指针。

与数组不同,链表的节点在内存中不一定是连续的,这样可以更加灵活地进行插入和删除操作。

在算法竞赛中,链表常常用于实现队列、栈等数据结构,同时也可以作为其他算法的辅助数据结构进行使用。

3. 栈和队列栈和队列是两种基本的数据结构,它们分别遵循“后进先出”和“先进先出”的原则。

栈可以通过压栈和弹栈操作实现,而队列则可以通过入队和出队操作来实现。

在算法竞赛中,栈和队列常常用于解决各种实际问题,比如表达式求值、迷宫搜索等。

4. 哈希表哈希表是一种以键值对形式存储数据的数据结构,它通过哈希函数将关键字映射到表中的一个位置,从而实现快速的检索。

在算法竞赛中,哈希表常常用于统计和去重等问题,通过合理设计哈希函数和解决冲突,可以大大提高算法的效率。

5. 树和图树和图是两种复杂的数据结构,它们在算法竞赛中经常用于解决各种复杂的问题。

树是一种非线性数据结构,常见的有二叉树、平衡树等,而图则是一种用边来表示数据之间关系的数据结构,包括有向图、无向图等。

在算法竞赛中,熟练掌握树和图的遍历、最短路径、最小生成树等算法,对于解决各种实际问题至关重要。

总结回顾数据结构是算法竞赛中的重要知识点,熟练掌握各种数据结构,并结合实际问题进行灵活运用,对于解决复杂的问题至关重要。

ACM简介及使用指南

ACM简介及使用指南
• ACM Digital Library - 全文数据库,收录ACM的所有出 版物,包括:
期刊、杂志和会报53种; 近300个会议,4000多卷会议录; 超过40万多篇全文,及“在线计算机文献指南”数据库 中230多万条文摘题录信息; 37种SIG时事通讯 ACM附属机构出版物 ACM口述历史访谈录
使用指南快速检索区高级检索按照出版物不同类别分类浏览computingreviews此处链接至reviewscomacm电子书系列快速检索acmdl和guide文摘库快速检索框输入要搜索的关键字如ascoustics点击searchguide文摘数据库检索结果guide文摘库检索的结果数量文章出处出版社文摘结果显示可按不同要求排序acm及附属机构出版物检索结果将快速检索的结果限定在acm和附属机构的出版物范围内点击红色字体部分acm及附属机构出版物检索结果文摘名称全文pdf格式acm及附属机构出版物检索结果41高级检索在高级检索中用户可通过单独或组合字段检索限定检索文献类型获取所需数据词组或姓名wordsorphrasesnames关键字作者所在机构keywordsaffiliations出版物publication会议conferenceissnisbndoi检索acm计算机分类体系ccscomputingclassificationsystem41高级检索可在文章的标题文摘评论中检索可进行作者编辑指导者评论者检索在作者给出的文章关键词中检索作者所属的机构检索按照出版物类别检索按照会议相关信息检索issnisbndoi检索acm计算机分类体系ccs41高级检索确定出版物或出版社限定文献出版时间限定文献类型限定检索到的文献所包含的内容通过出版社或出版物检索确定会议举办方确定会议召开地点确定会议召开时间通过会议信息检索文章通过出版物的isbnissn号或doi检索检索通过ccs计算科学分类表的类目检索42检索案例检索2005年至今基于ipv6的网络安全机制研究的文章421检索结果页通过关键词筛选检索结果通过作者评论者及他们所属的机构筛选检索结果通过出版时间出版物名称出版社文献类型筛选检索结果通过会议举办方会议相关活动会议录名称筛选检索结果421检索结果页与检索式相关的期刊杂志sig出版物会议选择检索结果的排序方式选择检索结果的显示方式421检索结果页点击文章标题链接进入引文信息页点击作者链接进入该作者的profile页面下载pdf全文该文章被下载的总次数6周内和1年内被下载的次数422文章信息文章相关信息

清华大学ACM集训队培训资料(内部使用)

清华大学ACM集训队培训资料(内部使用)
cout << pounds << " pounds." << endl;
return 0;
}
int stonetolb(int sts)
{
return 14 * sts;
}
下面是运行情况:
Enter the weight in sone:14
14 stone = 196 pounds.
程序通过cin语句给stone提供一个值,然后在main函数中,把这个值传递给stonetolb()函数,这个植被赋给sts之后,stonetolb()用return将14*sts返回给main()。
type functionname (argumentlist)
{
statements
}
注意,定义simon()的代码在main()函数的后面,C++中不允许将函数定义在另一个函数内。每个函数的定义都是独立的,所有的函数的创建都是平等的。
simon()函数的函数头定义如下:
void simon(int n)
清华大学ACM集训队培训资料(内部使用)
一、C++基础
基本知识
所有的C++程序都是有函数组成的,函数又叫做子程序,且每个C++程序必须包含一个main函数,编译器(能够把源代码转换成目标代码的程序)把翻译后的目标代码和一些启动代码组合起来,生成可执行文件,main函数就是可执行文件的入口,所以,每个C++程序有且只有一个main函数。
如果我们修改程序1.1中的main()函数的名称,将其改为Main(),那么,IDE就会给出错误信息,比如“[Linker error] undefined reference to `WinMain@16'”,因为编译器没有找到main函数。

ACM培训大纲

ACM培训大纲

实用标准文案ACM培训大纲基础内容:数据结构——》搜索——》图论DP数论博弈中级内容数据结构网络流第一章搜索1.二分搜索三分搜索2.栈3.队列4.深搜5,广搜6.第二章数据结构1.优先队列并查集2.二叉搜索树3.线段树(单点更新)4.5.精彩文档.实用标准文案第三章图论1.图的表示1.1二维数组1.2邻接表1.3前向星2.图的遍历2.1双连通分量2. 2拓扑排序3.最短路3.1迪杰斯特拉3. 2弗洛伊德4. 3 SPFA5.匹配匈牙利算法6.生成树7.网络流简介第四章动态规划1.状态转移方程2.引入3. 1 0-1背包4.2硬币问题5. 3矩阵链乘6.区间DP7.按位DP8.树形DP9.状压DP第五章数论1.欧几里得扩展欧几里得2.因数分解3. 费马小定理4.欧拉定理5.6.1筛法6. 2素数判定6. 2,1 0(Jn)方法精彩文档.实用标准文案6. 2. 2 Mi I ler-rabin 测试第六章博弈1.Nim 和2.SG函数第七章中级数据结构1.树状数组RMO 2.KMP3.AC自动机4.线段树(区间更新)5.第八章图论进阶1.网络流问题精彩文档.实用标准文案综述在很多人眼里,东北大学秦皇岛分校不算是985高校。

所以我们要用自己的能力证明我们有985 的实力。

ACM是计算机界认可度最高的一个比赛,可以说只要区域赛有过奖牌,国内任何IT公司没有理由不要。

同时,在高校之中,对一个大学计算机专业的评价,大部分人也会首先看ACM 的水平。

将ACM打出学校,在国内打出一定成绩,对扩大我校影响力很有帮助。

考虑到本校暂时没有进行专题训练的出题能力,专题训练的题目主要从UESTC 2014年集训队专题训练中获取,再加上从别的0J上找一些题目。

训练的平台设置在华中科技大学的vertual judge上面。

本人将在毕业之前承担培训任务。

在2015学年开始之前,培训计划为每两周一次,中间空闲的时间由大二或者大一熟悉C++的同学给不熟悉C++的同学进行基础的讲解。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ACM练习建议一位高手对我的建议:一般要做到50行以内的程序不用调试、100行以内的二分钟内调试成功.acm 主要是考算法的,主要时间是花在思考算法上,不是花在写程序与debug上。

下面给个计划你练练:第一阶段:练经典常用算法,下面的每个算法给我打上十到二十遍,同时自己精简代码,因为太常用,所以要练到写时不用想,10-15分钟内打完,甚至关掉显示器都可以把程序打出来.1.最短路(Floyd、Dijstra,BellmanFord)2.最小生成树(先写个prim,kruscal要用并查集,不好写)3.大数(高精度)加减乘除4.二分查找. (代码可在五行以内)5.叉乘、判线段相交、然后写个凸包.6.BFS、DFS,同时熟练hash表(要熟,要灵活,代码要简)7.数学上的有:辗转相除(两行内),线段交点、多角形面积公式.8. 调用系统的qsort, 技巧很多,慢慢掌握.9. 任意进制间的转换第二阶段:练习复杂一点,但也较常用的算法。

如:1. 二分图匹配(匈牙利),最小路径覆盖2. 网络流,最小费用流。

3. 线段树.4. 并查集。

5. 熟悉动态规划的各个典型:LCS、最长递增子串、三角剖分、记忆化dp6.博弈类算法。

博弈树,二进制法等。

7.最大团,最大独立集。

8.判断点在多边形内。

9. 差分约束系统.10. 双向广度搜索、A*算法,最小耗散优先.第三阶段:前两个阶段是打基础,第三阶段是锻炼在比赛中可以快速建立模型、想新算法。

这就要平时多做做综合的题型了。

1. 把oibh上的论文看看(大概几百篇的,我只看了一点点,呵呵)。

2. 平时扫扫zoj上的难题啦,别老做那些不用想的题.(中大acm的版主经常说我挑简单的来做:-P )3. 多参加网上的比赛,感受一下比赛的气氛,评估自己的实力.4. 一道题不要过了就算,问一下人,有更好的算法也打一下。

5. 做过的题要记好:-)50题第一类搜索(至少4题)1011 1033 1129 2049 2056 2488 2492 (稍难,也可并查集)第二类最短路(至少3题)1062 1125 1797 2253 2679 Bellman-Ford (难)第三类动态规划(至少6题,2479 and 2593必做)2479 and 2593 1015 1042 (也可贪心) 1141 1050 1080 1221 1260 2411 (稍难) 1276 第四类贪心(至少2题)1065 2054 (难) 1521 2709第五类并查集(至少2题)1861 1182 (难) 1308 2524第六类最小生成树(至少2题, 而且Prim 和Kruskal 至少各用一次)1251 1258 1789 2485第七类二分图(至少3题)1325 1469 2195 (KM 算法或最小费用最大流) (难) 2446 1422 and 2594第八类最大流(至少2题)1087 1459 1149 2516 (最小费用最大流) (难)第九类快速查找(B-Search, Hash and so on) (至少3题)2503 2513 (+Euler回路的判定) 1035 1200 2002第十类数论(至少2题)1061 1142 2262 2407 1811(难) 2447 (难)第十一类线段树(无最少题数要求)2352 (可用简单方法) 2528第十二类计算几何(至少2题,1113凸包算法必做)1113 1292 2148 (难) 2653 1584第十三类高精度(至少3题,1001必做)1001 1047 1131 1503 1504 1060 and 1996 (多项式)SCU1002, 1003, 1004 (/soj)第十四类模拟(至少5题)1029 and 1013 1083 and 2028 2234 and 1067 1012 1026 1068 1120 2271 2632第十五类数学(至少4题)2249 1023 2506 1079 1019 and 1095 1905 and 1064 (二分)POJ分类1、排序1423, 1694, 1723, 1727, 1763, 1788, 1828, 1838, 1840, 2201, 2376, 2377, 2380, 1318, 1877, 1928, 1971, 1974, 1990, 2001, 2002, 2092, 2379,1002(需要字符处理,排序用快排即可)1007(稳定的排序)2159(题意较难懂)2231 2371(简单排序)2388(顺序统计算法)2418(二叉排序树)2、搜索、回溯、遍历1022 1111 1118 1129 1190 1562 1564 1573 1655 2184 2225 2243 2312 2362 2378 23861010,1011,1018,1020,1054,1062,1256,1321,1363,1501,1650,1659,1664,1753,2078,2083,2303,2310,2329简单:1128, 1166, 1176, 1231, 1256, 1270, 1321, 1543, 1606, 1664, 1731, 1742, 1745, 1847,1915, 1950, 2038, 2157, 2182, 2183, 2381, 2386, 2426,不易:1024, 1054, 1117, 1167, 1708, 1746, 1775, 1878, 1903, 1966, 2046, 2197, 2349,推荐:1011, 1190, 1191, 1416, 1579, 1632, 1639, 1659, 1680, 1683, 1691, 1709, 1714, 1753, 1771, 1826, 1855, 1856, 1890, 1924, 1935, 1948, 1979, 1980, 2170, 2288, 2331, 2339,2340,1979(和迷宫类似)1980(对剪枝要求较高)3、历法1008 2080 (这种题要小心)4、枚举1012,1046,1387,1411,2245,2326,2363,2381,1054(剪枝要求较高),1650 (小数的精度问题)5、数据结构的典型算法容易:1182, 1656, 2021, 2023, 2051, 2153, 2227, 2236, 2247, 2352, 2395,不易:1145, 1177, 1195, 1227, 1661, 1834,推荐:1330, 1338, 1451, 1470, 1634, 1689, 1693, 1703, 1724, 1988, 2004, 2010, 2119, 2274, 1125(弗洛伊德算法) ,2421(图的最小生成树)6、动态规划1037 A decorative fence、1050 To the Max、1088 滑雪、1125 Stockbroker Grapevine、1141 Brackets Sequence、1159 Palindrome、1160 Post Office、1163 The Triangle、1458 Common Subsequence、1579 Function Run Fun、1887 Testing the CATCHER、1953 World Cup Noise、2386 Lake Counting7、贪心1042, 1065, 1230, 1323, 1477, 1716, 1784,1328 1755(或用单纯形方法),2054,1017,1328,1862,1922 ,2054,2209,2313,2325,2370。

8、模拟容易:1006, 1008, 1013, 1016, 1017, 1169, 1298, 1326, 1350, 1363, 1676, 1786, 1791, 1835, 1970, 2317, 2325, 2390,不易:1012, 1082, 1099, 1114, 1642, 1677, 1684, 1886,1281 1928 2083 2141 20159、递归166410、字符串处理1488, 1598, 1686, 1706, 1747, 1748, 1750, 1760, 1782, 1790, 1866, 1888, 1896, 1951, 2003,2121, 2141, 2145, 2159, 2337, 2359, 2372, 2406, 2408, 1016 1051 1126 1318 1572 1917 19362039 2083 2136 2271 2317 2330,2121 240311、数论1006,1014,1023,1061,1152,1183,1730,226212、几何有关的题目凸包:1113, 1228, 1794, 2007, 2187,1113 wall,2187 beauty contest容易:1319, 1654, 1673, 1675, 1836, 2074, 2137, 2318,不易:1685, 1687, 1696, 1873, 1901, 2172, 2333,13、任意精度运算、数字游戏、高精度计算1001 1023 1047 1060 1079 1131 1140 1142 1207 1220 1284 1289 1306 1316 1338 1405 1454 15031504 1519 1565 1650 1969 2000 2006 2081 2247 2262 2305 2316 23891001, 1220, 1405, 1503,1001(高精度乘法)2413(高精度加法,还有二分查找)14、概率统计1037,105015、小费用最大流、最大流2195 going home,2400 supervisor, supervisee,1087 a plug for UNIX,1149 PIGS,1273 drainageditches,1274 the perfect stall,1325 machine schedule,1459 power network,2239 selectingcourses16、压缩存储的DP1038 bugs integrated inc,1185 炮兵阵地,2430 lazy cow17、最长公共子串(LCS)1080 human gene functions,1159 palindrome,1458 common subsequence,2192 zipper 18、图论及组合数学2421 Constructing Roads、2369 Permutations、2234 Matches Game、2243 Knight Moves、2249 Binomial Showdown、2255 Tree Recovery、2084 Game of Connections、1906 Three powers、1833 排列、1850 Code、1562 Oil Deposits、1496 Word Index、1306 Combinations、1125 Stockbroker Grapevine、1129 Channel Allocation、1146 ID Codes、1095 Trees Made to Order、找规律2247 Humble Numbers、2309 BST、2346 Lucky tickets、2370 Democracy in danger、2365 Rope、2101 Honey and Milk Land 2028 When Can We Meet?、2084 Game of Connections、1915 Knight Moves、1922 Ride to School、1941 The Sierpinski Fractal、1953 World Cup Noise、1958 Strange Towers of Hanoi、1969 Count on Canton、1806 Manhattan 2025、1809 Regetni、1844 Sum、1870 Bee Breeding、1702 Eva\'s Balance、1728 A flea on a chessboard、1604 Just the Facts、1642 Stacking Cubes、1656 Counting Black、1657 Distance on Chessboard、1662 CoIns、1663 Number Steps、1313 Booklet Printing、1316 Self Numbers、1320 Street Numbers、1323 Game Prediction、1338 Ugly Numbers、1244 Slots of Fun、1250 Tanning Salon、1102 LC-Display、1147 Binary codes、1013 Counterfeit Dollar、19、博弈类1067 取石子游戏、1740 A New Stone Game、2234 Matches Game、1082 Calendar Game 、2348 Euclid\'s Game、2413 How many Fibs?、2419 Forest20、简单、模拟题1001 Exponentiation 、1002 487-3279、1003 Hangover 、1701 Dissatisfying Lift、2301 Beat the Spread!、2304 Combination Lock、2328 Guessing Game、2403 Hay Points 、2406 Power Strings、2339 Rock, Scissors, Paper、2350 Above Average、2218 Does This Make Me Look Fat?、2260 Error Correction、2262 Goldbach\'s Conjecture、2272 Bullseye、2136 Vertical Histogram、2174 Decoding Task、2183 Bovine Math Geniuses、2000 Gold Coins、2014 Flow Layout、2051 Argus、2081 Calendar、1918 Ranking List、1922 Ride to School、1970 The Game、1972 Dice Stacking、1974 The Happy Worm、1978 Hanafuda Shuffle、1979 Red and Black、1617 Crypto Columns、1666 Candy Sharing Game、1674 Sorting by Swapping、1503 Integer Inquiry、1504 Adding Reversed Numbers、1528 Perfection、1546 Basically Speaking、1547 Clay Bully、1573 Robot Motion、1575 Easier Done Than Said?、1581 A Contesting Decision、1590 Palindromes、1454 Factorial Frequencies、1363 Rails、1218 THE DRUNK JAILER、1281 MANAGER、1132 Border、1028 Web Navigation、21、初等数学1003 Hangover、1045 Bode Plot、1254 Hansel and Grethel、1269 Intersecting Lines、1401 Factorial、1410 Intersection、2363 Blocks 、2365 Rope、2242 The Circumference of the Circle、2291 Rotten Ropes、2295 A DP Problem、2126 Factoring a Polynomial、2191 Mersenne Composite Numbers、2196 Specialized Four-Digit Numbers、1914 Cramer\'s Rule、1835 宇航员、1799 Yeehaa!、1607 Deck、1244 Slots of Fun、1269 Intersecting Lines、1299 Polar Explorer、1183 反正切函数的应用、22、匹配1274, 1422, 1469, 1719, 2060, 2239,-------------------------------------------------------------------------------------------经典1011(搜索好题)1012(学会打表)10131019(它体现了很多此类问题的特点)1050(绝对经典的dp)1088(dp好题)1157(花店,经典的dp)1163(怎么经典的dp那么多呀???)1328(贪心)1458(最长公共子序列)1647(很好的真题,考临场分析准确和下手迅速)1654(学会多边形面积的三角形求法)1655(一类无根树的dp问题)1804(逆序对)2084(经典组合数学问题)2187(用凸包求最远点对,求出凸包后应该有O(N)的求法,可我就是调不出来)2195(二分图的最佳匹配)2242(计算几何经典)2295(等式处理)2353(dp,但要记录最佳路径)2354(立体解析几何)2362(搜索好题)2410(读懂题是关键)2411(经典dp)趣味1067(很难的数学,但仔细研究,是一片广阔的领域)1147(有O(n)的算法,需要思考)1240(直到一棵树的先序和后序遍历,那么有几种中序遍历呢?dp)1426(是数论吗?错,是图论!)1648(别用计算几何,用整点这个特点绕过精度的障碍吧)1833(找规律)1844(貌似dp或是搜索,其实是道有趣的数学题)1922(贪心,哈哈)22312305(不需要高精度噢)2328(要仔细噢)2356(数论知识)2359(约瑟夫问题变种)2392(有趣的问题)很繁的题100110081087(构图很烦,还有二分图的最大匹配)1128(USACO)124513291550(考的是读题和理解能力)1649(dp)2200(字符串处理+枚举)2358(枚举和避免重复都很烦)2361(仔细仔细再仔细)难题1014(数学证明比较难,但有那种想法更重要)1037(比较难的dp)1405(高精度算法也分有等级之分,不断改进吧)2002(不知道有没有比O(n^2*logn)更有的算法?)2054(极难,很强的思考能力)2085(组合数学)2414(dp,但要剪枝)2415(搜索)2423(计算几何+统计)多解题1002(可以用排序,也可以用统计的方法)1338(搜索和dp都可以)1664(搜索和dp都练一练吧)2082(这可是我讲的题噢)2352(桶排和二叉树都行)Note:1011: 很经典的剪支1014: 难在数学上1017: 严格的数学证明貌似不容易1021: 有点繁,考察对图形进行各种旋转的处理1083: 巧妙的思考角度1150: 分奇偶讨论,lg(n)算法1218: 三行就够了,虽然简单,但也有优劣之别1505: 二分加贪心1654: 做法也许很多吧,本人用有向面积做的1674: 计算圈的个数(算是graph 吧)1700: 数学证明不容易1742: O(m*n)的算法1863: 要耐心地慢慢写…^_^1988: 并查集2051: 堆2078: 不难,但剪支可以做到很好2082::O(n),你想到了吗?2084: 卡特兰数2182: 线段树2195: 最小费用最大流2234: 经典博弈算法2236: 并查集2299: 二分思想2395: Kruskal 最小生成树的拓展2406: KMP2411: 用二进制串来表示状态。

相关文档
最新文档