集训队算法
‘壹’ 信息学竞赛算法和数据结构
其实书都是你抄我我抄你,最终来源都是集训队论文……
我们用的中学高级本,感觉不是很好,讲得知识跨度很大……从回溯法到平衡树……每个知识点就一道题……
奥赛经典还不错,就是练习题太空了没法实践……
所以说还是需要结合一下……最好要有老师带,当然有学长带那是最好不过了……
‘贰’ 准备noi用什么书比较好
《算法竞赛入门经典》刘汝佳 入门经典啊~
然后感觉直接看郭嵩山写的《国际大学生程序设计例题解》(好像有四册)比较好,语言一三册pascal,二四册c++;一三主要讲算法和相应题解(数论,搜索,计算几何,图论,动态规划等);二四则为题库型的,带讲解、测试数据和源代码。对noi用很不错的。还有就是《算法导论》最好有一本。
《算法导论》确实是本好书,对于各种知识讲得都很全,即使有些相关知识没有仔细讲也会在课后习题或思考题里给出提示,根据提示上网查都能查到相关资料。导论的特色在于将严格的数学证明和算法设计结合在了一起,并且基本做到了面面俱到,当作一本工具书非常不错。导论的数学证明部分可能有些东西你没学,到大学里才会学到,比如群论的知识;不过没事,看不懂的地方直接跳过证明看算法就行,一般不会太难理解的。
然后是《算法艺术与信息学竞赛》,这本书难度较大,不过提供的思路非常好。
noi会出现很多noip中不会出现的知识,首先高级数据结构——并查集,线段数,树状数组,trie,后缀树等都是有可能的,其次算法方面——图论里的最小生成树,最短路,强连通分量及其缩点,网络流,二分图匹配等都有可能;动态规划——必考内容,而且难度一般较大一点,会加状态压缩或各种优化什么的(比如四边形不等式的优化),还有搜索啦,计算几何(凸包)啦之类的。
题库不知道现在vijos发展的怎么样了,推荐去ACM/ICPC的题库做题,如北大,浙大,杭电的,题目非常多而且很全;不过acm的题基本全是英文的,英文不好就挂了,USACO也是个很不错的网站。
我是山东的 ,上海那边不熟,反正我们这儿要先一等然后再集训,最后省选前几名。上网查查就好了。
最后,祝你在noi的大舞台上展现自己的风采。呵呵~我不在参加noi了,上大学搞acm了,希望我的一点想法对你有所帮助。
‘叁’ 求助:学校太烂,好像没有集训队,怎么参加acm
应该是没有蹭别的学校的名额参加acm的~要组队的话,还是找自己学校的人组~如果学校支持的话最好,不支持的话,就很困难了~如果数学好的话对搞acm肯定是有帮助的,但也不是绝对的,原先的acm比赛偏向算法,搞得像是OI的加强版~现在的话越来越偏重对编码能力的要求~现在赛制是先参加各个赛区的网络赛预赛(网络赛是没有参赛限制的,只要能凑到3个人就行),再参加区域赛,再参加世界总决赛,亚洲一共15个赛区,中国大陆5个,每年的9月到11月是各大洲的区域赛,网络预赛一般在区域赛前两三个星期比的~过了网络赛才有参加区域赛现场赛的资格~网络赛的时候竞争就挺激烈的了~搞acm跟大学的好坏没决定性的关系,主要是看学校的重视程度,每年都有一些非211高校进世界总决赛的~好好努力吧~
‘肆’ 关于C语言,这题怎么做
#include<stdio.h>
intmain()
{
printf("输入2个整数,分别表示参加集训的次数和排名前10的次数 ");
inta,b;
scanf("%d%d",a,b);
intresult=1500+a*5+b*5;
if(result>=1800)
{
printf("A ");
}elseif(result>=1700)
{
printf("B ");
}elseif(result>=1600)
{
printf("C ");
}
else
{
printf("D ");
}
return0;
}
‘伍’ 全世界最强的算法平台codeforces究竟有什么魅力
简单介绍一下codeforces这个网站,codeforces位于宇宙编程最强的毛国。据说最早是由俄罗斯的一群大学生维护的,它最大的特点就是代码和题解的公开。所有人都可以随意查看其它大牛的代码,可以说是非常具有开源精神了。
codeforces很大的特点就是题目兼容并蓄,什么难度等级的题目都可以找到。并且题目很有意思,往往思维陷阱比较多,也就是思维题比较多。对于数据结构以及算法的考察相对弱一些,更多的时候往往是告诉你用什么算法你也不知道怎么做……
codeforces另外一个很大的特点就是它有自己的上分系统,基本上每周会举办一到两次在线的算法比赛。一般的比赛时长是两个小时,只要注册账号就可以免费参加。我记得当年第一次参加比赛会获得一个初始分是1500,然后根据你在比赛当中的表现上分或者减分。由于参加的选手水平实力强度不一,所以它开设了好几个档次(div),不同层次的选手面对的题目难度也不一样,这样保证了大家都可以愉快地参赛。
codeforces在比赛的时候只会测试一小部分数据,真正的测试集会放到赛后进行测试。所以在比赛中测试通过的代码,只是通过了小数据验证,很有可能有隐藏的问题没被发现。当你通过了这道题之后,你就可以去查看其他通过人的代码,去分析它们有没有问题,如果发现了bug,可以构造一份数据hack掉他的提交。hack成功之后,你会获得分数的奖励。
你可以双击打开其他人的提交记录,去阅读他们的代码。到了比赛后期,能做的问题做的差不多了之后,就进入了紧张刺激的互相hack阶段。讲道理,这比只是单纯做题的竞赛要有趣多了。
以前我们acm集训队经常晚上一起打codeforces的比赛,有时候看到队友在一个房间里,还会互相关注一下近况,互相hack一把,不得不说现在怀念起来还是非常有意思的。
好了,关于codeforces网站就介绍到这里了,如果你也对算法感兴趣的话,不妨试着用一下它吧,相信你也会找到算法的乐趣。
‘陆’ 参加acm需要学什么
其实acmer们都是自己训练的啊,这种东西只能自己学哈~先从基本的开始吧,把c/c++练熟了,java要掌握一些。然后就是算法上的东西了。算法的学习是比较痛苦的,书建议看算法导论,算法艺术与信息学竞赛,具体数学,柔性字符串匹配,然后是去各大oj上训练做题,推荐poj,zoj,hdoj,还有各种比赛。下面是详细的训练方法~
训练方法。现在这个赛季基本就算结束了,所以可以从自身能力开始提升,先把算法掌握的全面一些。模拟,数学,计算几何,图论,数据结构,动态规划,搜索,字符串匹配,贪心,这些知识都要进行学习。如果来不及的话,尽量保证,每一块知识都能有两个人覆盖到,这样三人组队,可以保证稳定发挥。个人训练可以自己做题,按各个知识点来。也可以穿插着去做做比赛,topcoder的srm和codeforces都很不错,还有zoj的月赛。这都是平时练习的好机会。
比赛前一两个月,要进行队伍磨合。组队做一些比赛,可以去hust的oj上自己挂比赛。注意分配几时,然后读题要仔细,分题的时候要清醒,千万别觉得这个题可做,就直接搞,一定要和队友商量。卡题的时候,切记不要冲动,乱交会导致罚时飙升啊,那样很痛苦的。
然后热身赛记得测一下longlong类型的输出是用lld还是I64d,然后放平心态就可以了~
‘柒’ 一个计算机专业大学生,如何看待学校的ACM集训队我不懂为什么那么多人挤破脑袋想加入我觉得一名优
啥?居然有很多人想挤破脑袋进ACM集训队这样的事情。。。。。
估计是因为很多人盲目的把ACM看待为高中时候数学化学竞赛的性质的原因吧。。。
以我的经历来看,计算机算法竞赛对人的成长作用毫无疑问是不可估量的,但这绝不同于高中时那些竞赛的性质。选择ACM不是说是为了锻炼,更不可能是为了证书(普通比赛的证书随便一大把,但想拿到有影响力的证书简直是难的可怕)。选择ACM就意味着你选择了你以后的道路,为什么这么说呢,其一,研究算法是一项极其需要脑力和时间的事情,这就意味着你必须要放弃其他许多事情,只能专其一,尽管ACM跟NOI相比跟侧重于运用而不是创新;其二,可以说:一入此门深似海。。。这会彻底颠覆你以前思考问题的模式,学会并习惯一种全新的的思维模式。
这就是我自己亲身经历的体会,你必须有极大的兴趣才能坚持的下来(比如你很多时候会对着电脑查BUG 10+小时或者一道题目要近一个月才想通),所以我敢说那些挤破脑袋想加入的95%的人会很快就放弃
‘捌’ 高中才开始学习信息竞赛,有机会进入国家集训队吗
我觉得 这得看你在哪个省份哪个学校了
如果在一个没有竞赛氛围的学校 很难不屈服于高考而放弃掉
当然 即使有竞赛氛围 你也需要专业的指导(或许可以用自己强大的搜索能力替代)
希望题主想清楚自己的选择
选择好之后就不要后悔
竞赛这条路说辛苦也不辛苦
祝好吧
我的两个学长,都是高中开始搞的,先搞的那个高一时第一次参加全国比赛,拿了个全国第一,然后集训队、国家队、国际金牌。
还有一个跟他是同班同学,比他晚搞一点,是第二年的国际金牌。
不过,他们初中都是搞数学竞赛的。。。
‘玖’ 怎么搞好acm竞赛
想搞好ACM竞赛不大容易,首先你需要学会C/C++/java中的一个作为工具语言。因为这种竞赛不是在考察你的语法,而是考察你的算法功底。ACM涉及的算法很多,比赛考察内容也比较杂。因此如果你要出成绩就必须付出很多努力。做题是ACM中非常重要的,你必须坚持刷题。先从非常简单的题目做起,起到一个入门的作用。如果不知道那些题是入门题可以找一个人带你。先刷这些入门题,直到对编程和ACM熟悉了就可以往下学习。数据结构是ACM中很重要的,以后很多比较有难度的知识都离不开数据结构。再往后要学习各种算法,《算法导论》是一本经典的书。我们学校集训队人手一本。这本书其实并不是非常易懂,其实学算法本来就是需要下功夫的。搞ACM你大概需要了解下面这些知识:动态规划、数论、图论、网络流、计算几何、KMP、搜索技术等,每一部分还有很多知识点,因此样样精通是根本不可能的。如果想拿点成绩那么你必须在绝大多数方面都有些了解,而且自己应该还有些强项。我在我们学校集训队就是主要搞计算几何的。努力是必须的,如果想拿到好成绩是要看你的水平和队友的水平还有合作是否默契等。
‘拾’ 《算法竞赛入门经典训练指南》pdf下载在线阅读,求百度网盘云资源
《算法竞赛入门经典 训练指南 升级版》(刘汝佳)电子书网盘下载免费在线阅读
资源链接:
链接: https://pan..com/s/1Qdp8nP4olJEuUABqF15HSQ 提取码: t51c
书名:算法竞赛入门经典 训练指南 升级版
作者:刘汝佳
出版社:清华大学出版社
出版年份:2021-5-1
内容简介:
《算法竞赛入门经典——训练指南(升级版)》是《算法竞赛入门经典(第2版)》一书的重要补充,旨在补充原书中没有涉及或者讲解得不够详细的内容,从而构建一个更完整的知识体系。本书通过大量有针对性的题目,让抽象复杂的算法和数学具体化、实用化。
《算法竞赛入门经典——训练指南(升级版)》共包括6章,分别为算法设计基础、数学基础、实用数据结构、几何问题、图论算法与模型以及更多算法专题。全书通过206道例题深入浅出地介绍了上述领域的各个知识点、经典思维方式以及程序实现的常见方法和技巧,并在章末给出了丰富的分类习题,供读者查漏补缺和强化学习效果。
《算法竞赛入门经典——训练指南(升级版)》题目多选自近年来ACM/ICPC区域赛和总决赛真题,内容全面,信息量大,覆盖了常见算法竞赛中的大多数细分知识点。书中还给出了所有重要的经典算法的完整程序,以及重要例题的核心代码,既适合选手自学,也方便院校和培训机构组织学生学习和训练。
作者简介:
刘汝佳,2000年3月获得NOI2000全国青少年信息学奥林匹克竞赛一等奖。大一时获2001年ACM/ICPC国际大学生程序设计竞赛亚洲-上海赛区冠军和2002年世界总决赛银牌。2004年至今共为 ACM/ICPC亚洲赛区命题二十余道,担任6次裁判和2次命题总监,并应邀参加IOI和ACM/ICPC相关国际研讨会。曾出版《算法竞赛入门经典》《算法竞赛入门经典——训练指南》《编程挑战》等畅销书。
陈锋,任职于厦门宇道信隆信息科技有限公司,担任技术总监职务,专注于人工智能以及算法技术在金融科技领域的应用。同时担任四川大学ACM/ICPC算法竞赛集训队特邀指导老师,榕阳编程NOI、NOIP指导教练。所带学员多次获得ICPC金/银牌,进入NOI省队等。曾出版《算法竞赛入门经典——训练指南》《算法竞赛入门经典——习题与解答》《算法竞赛入门经典——算法实现》等畅销书。