拿下 ACM 金牌!

2024-03-16 02:32
文章标签 acm 金牌 拿下

本文主要是介绍拿下 ACM 金牌!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大家好,我是厂长。

昨天自费给大家送了一块3060显卡,想免费领显卡的同学可以看一下:

3060显卡,真香!!!

今天和大家分享我的一个朋友他是如何从双非,拿到ACM金牌,再拿到字节跳动、旷视科技等大厂offer,保研985的经历。以下的我:指作者小鱼

五年前的我进入双非院校,曾经觉得自己的一辈子就和普通大学一样,注定普通。

五年后我拿到ACM金牌、字节跳动、旷视科技等大厂offer,保研985。

在字节和旷视的工牌

坎坷的大学

我本科是一所双非院校,专业是软件工程,高考失利,进入到了一所不想去的大学,曾经觉得自己的一辈子就和普通大学一样,注定普通,无法像重点大学的同学实现人生理想。

但我后面的故事告诉我,高考是结束,也是开始,我的人生并没有完蛋

大学开始

大一上学期我和刚入学同学一样,平常偶尔上课划划水,但我对写代码很感兴趣,从 “Hello World”A+B 问题,我觉得写代码很爽。

一次偶然的机会我知道学院有算法实验室,简单的从网上了解了一下ACM比赛,当时还不知道这么难,就勇敢的找算法实验室的学长询问如何学习算法、参加竞赛。

学长耐心的告诉我如何入门:  可以先学习C++基本语法、然后去算法平台刷简单的基础题(HDUOJ第11页),其次学习算法与数据结构知识,再刷题巩固。

就这样踏上了算法竞赛的"不归路",从入门到秃头,有时候一道题要花一天的时间。

就这样一边学习一边刷题,我通过了算法实验室的选拔,成为了ACM队员,也找到了最开始的队友。

努力是一切的开始

很多同学上了大学都开始无所事事,过上了神仙生活,我身边也有很多这样的同学。

但我却保持自律,每天坚持学习算法与数据结构和刷题,甚至逃了很多课,只为了去实验室多刷两道题,每次看到题目通过Accepted,我都开心的像个孩子一样。

现在回想起来,与其说我是上大学去了,不如说: 我去学习算法,顺便读了个大学。

前期碰壁

努力学习的时光度过的很快,我很快到了大二,去参加了我算法竞赛生涯的第一场比赛,虽说可以预料到过可能拿不到铜奖,但当成绩出来的时候,失望和难过的心情,却没有因此而减退。

如果努力还不够,就更努力

初站失利后,我回去更加的努力训练刷题,了解ACM竞赛的同学应该知道,每场比赛都有很多难题。

我的策略是: 先搞定铜牌题(ACM基础题),就这样刷了很多题,大三上我又参加了一次ACM邀请赛,又一次落榜!

说实话,这次真的打击到我了,我开始怀疑: 我是不是不是这块料、脑子不行、双非学校是不是不应该选择打ACM竞赛...

坚持是成功的秘诀

在连续经历了两次失利后,虽然有过自我怀疑和否定,但内心的不甘和不服输的决心很快的将自我怀疑驱逐,我选择了坚持!

这次我将所有ACM考点根据专题分了类,去学习每个专题的对应的算法与数据结构,然后刷对应的题目进行巩固和加深理解。

曾经一度找到一个空的房间,整天除了吃饭都在空荡荡房间里训练刷题,是的你没听错,是除了吃饭,因为晚上是在实验室睡的。

雨后终有彩虹

终于在大三下的ACM区域赛,拿到了我人生的第一块ACM奖牌,虽然是一块铜牌,但对那时的我意义非凡。

我依旧记得比赛结束的那天,太阳正好、天也很蓝。

学习算法之路

这篇文章分享了 算法小白如何一步步向ACM金牌进阶,在知乎上得到了几万浏览、数千收藏!

旷视我人生第一份工作

大三上的期末拿到ACM铜牌后,在朋友的内推下投递了旷视科技的算法实习生,因为是算法组,面试主要考察了算法与数据结构,第一次面试很紧张,好在题目都做出来了,有惊无险的通过了面试、拿到了Offer,后面约定好入职时间,寒假就去实习了。

遇到了人生中重要的人

我所在的是旷视科技的算法组,组内全是大神,大多数同事都是高中保送都是 上交ACM班的,Leader是ACM亚洲区域赛的冠军,还有本科中顶会的、Kaggle竞赛大神、还有项目大佬、数学大神..., 一开始知道大家这么厉害,弱鸡的我还不太敢说话,后面一起吃饭、团建,慢慢和大家熟悉了起来,发现大家人也很nice、很好相处。

就这样我遇到了我人生第一批同事,后面也成为了我人生很重要的朋友。

实习工作

在进入旷视之前,我在学校没有做过任何大项目,只写过大作业,都还很水。

旷视的工作氛围整体很友好,给了我这个小白入门的时间和空间,比如常见的git协作开发、项目的框架、编译工具、业务的场景、代码... ,了解了基本的东西后,就给了我一个简单的任务,可以看出是为了锻炼我的,可能并不会真实上线的。

现在我还记得,写完代码提交后,mentor给了我很多中肯的建议,有抽象上面的、有代码风格上面的,并给我修改建议,学到了很多在学校接触不到的东西,现在想到这些心中还很感动。

后面逐渐熟悉了后,开始承担一些复杂的开发需求,但还是有mentor一起带着的,在这个过程中也收获了很多东西。

再战一年

大三下拿到ACM铜牌后,我的两个队友就退役了,我就去旷视实习了,我也考虑要不要退役,还是和下一届的学弟再战一年,再战一年的话意味着我没有时间准备秋招,如果没有拿到更好的成绩可能找不到工作。

就在我犹豫的时期,我的Leader,也是我的好朋友hanyuan鼓励我再战一年,向更好的成绩发起冲击,突破自己。

因为好朋友的鼓励,加上自己内心也确实不甘心算法竞赛以铜牌结束。

我选择和两个学弟再战一年,因此我平常实习下班就会继续刷题,学习新的知识。

秋招上岸

意外也是努力的结果

我是拿的字节跳动秋招提前批的offer, 七月份一次意外的水群,了解到字节跳动秋招提前批开始了,之前知道字节跳动主要考察算法与数据结构能力,自己对这块还是有点信心的,就投递了。

宇宙条果然效率奇高,第二天就约了我面试时间,因为我想暑假回学校和学习一起为了下半年的ACM亚洲区域赛做准备训练,所以就立马面试了,当时是现场面试,从上午十一点开始,一共三轮技术面+一轮hr面。

上午面了一轮技术面,主要问的是算法题,中午在hr小姐姐的带领下,在头条食堂吃了午饭,真的不错!

下午面了两轮技术面+一轮hr面,二面是交叉面,问了基础知识,就回答了一些知道的东西,面试官可能看出我主要打竞赛,没有准备过八股文,后面就问了两道算法题,有惊无险的都答上来了。

三面是技术Leader面,主要问了之前在旷视做的项目,还有算法题。

可以看出字节跳动面算法题还是非常多的,所以想去字节的读者们,一定要好好刷题呀!

最后一面就是hr面,简单聊了聊常见的问题,女朋友在不在异地、意向的薪资.... 一天就全部走完了所有流程,宇宙条的效率YYDS。

7月12号,我不出意外的拿到了字节跳动秋招提前批的意向offer,我上岸了!

人生第一个竞赛冠军

字节面完试,我就从旷视请假回学校训练,准备大四也是我最后一年的比赛,这是我参加算法竞赛的最后一年了。

还记得暑假很热、学校人也不多,所以我早上起的很早,吃完早饭就去实验室刷题,那段时间我的竞赛状态也很好,一般能想到的题目,都能通过。

当时正好江西省举办第一届CCPC省赛,正好是我大四那一年,我和学弟一起组队报名了,因为我大三下主要在外面实习,还比较担心团队合作的问题,但好在大家都自己刷了不少题。

比赛那天也很顺利,基本上是看一道题,有思路了,上去写,写完就能通过,我们距离比赛最后一小时的时候已经是省内第一名,此时比赛已经过去了四个小时,剩下的题目有些难度,学弟开始吃点东西,考虑要不要不做了,感觉省内冠军可能性已经很大了,我鼓励了学弟继续做,我选择了一道题,我们三个合力思考、讨论、商量解法。

最终最后十分钟的时候通过了!冠军稳了!

我拿到了冠军,三年来的坚持在那一刻觉得很值得。

CCPC省赛冠军

保研985

省赛夺冠后,我们对下半年的ACM亚洲区域赛充满信心,我们相信一起努力训练,一定可以创造学校的历史。

暑假刷题的时间匆匆,转眼就到了九月开学,年级群发了推免的通知,我想了想我要不要也试一试呢,我平时成绩还行+竞赛获奖的加分,也有机会试一试。

正好暑假拿到了华东师范大学的夏令营优秀营员(后面会发文讲讲这个经历),我就提交了材料,进入候选了。

期间知道专业只能保两个人的时候,觉得自己无望了,后面发了公示的时候,看了下自己加完分正好第二,复试表现还行,最终的保研名额也是第二,成功拿到了保研资格!

后面我毕设老师,介绍了他的好朋友,在电子科技大学,因为之前去过华东师范大学,也算有点了解,加上自己想去大城市,所以后面就表示了婉拒和感谢。

最终保研了华东师范大学,我神奇的有研究生读了。

说实话,自己也不是很兴奋,因为我刚进大学的时候,就没太想读研,因为我平时也不太喜欢上课,并不喜欢学校的束缚,当时相比之下,更加喜欢工作,此时因为我已经有了字节秋招offer,我当时更加倾向于毕业了直接进大厂。

ACM金牌

保研后,已经快10月,我们选择了两个ACM赛区,就开始了认真准备比赛,那段时间每周都要一起组队训练好几次,赛后补题。

十月我们踏上了比赛的征途,这次我们拿到了意想不到的成绩,ACM亚洲区域赛金牌(金牌最后几名、赛区相对容易,有运气成分),这是我们学校、也是 江西省的第一块ACM亚洲区域赛金牌,我真正的创造了历史!

ACM亚洲区域赛金牌

字节工作经历

入职

打完比赛,我就回老东家旷视办了离职,和朋友们告了别,就去字节跳动提前实习了,去办理入职的时候,发的是最新款的MacBook Pro,并且很多一起入职的人,可以看出字节真的发展很快,

上午办理完入职,吃完午饭,下午就去工位了,有一个入门要学习的文档,按着文档一步步来就行。

快节奏

字节跳动整体上工作节奏要快很多。我大概熟悉一周后,就开始接手一些简单的需求了,字节的基础架构做的很好,业务方的后端开发,不需要考虑框架的问题,公司都有现成的轮子,整体上开发的速度要快很多。

同时公司的文化也是坦诚清晰,一般有问题会拉个群,群里@一直对方,一般都会得到对方的解答。

因为我之前在旷视是算法实习生,工程上的经验比较少,在字节是后端开发,因此很多东西都是从0开始学习的,比如: golang、框架、工具、字节云....

后面随着工作需要,慢慢的也得心应手了。

人生重要选择

实习期间,我也考虑过我到底是要在互联网大厂工作,还是去读研,这个问题真的纠结了很久,我一开始是更倾向于工作的,我不是很看重学历,自己也更想做比较接地气的事情,在公司的成长速度比较快的。

但不可回避的是,在互联网大厂工作确实也很累,每天10点半左右上班,晚上十点左右下班。

到了家洗个澡,整理下家里,就快十二点了,却也总想找一些娱乐去对抗忙碌的生活,因此一刷手机就刷到了一两点,早上九点多起床,吃个早饭就去上班了,开启了打工人新的一天。

期间父母也无数轮劝说,自己也开始动摇了,在互联网大厂一直工作下去,放弃读研以后会不会后悔,最终我选择了读研。

字节跳动离职短信

总结

五年的经历给了我许多感悟,我总结了以下几点,分享给大家,希望能帮助大家少走弯路。

多和上进的人同行

如果你身处的环境不好,身边大多数人都不学习,那我建议你去认识一些上进努力的同学、朋友,比如加入学校的实验室,不管是做开发、还是学习算法... 选择一个自己感兴趣的,多向上进的人学习,一段时间过后,你可能已经悄悄惊艳所有人。

勇敢

罗翔老师把勇敢称为最高级的词汇。

勇敢帮助我从普通迈向不凡的第一步,没有勇敢的参加实验室,没有勇敢的向学长请教,没有勇敢的参加实验室选拔,可能所有后续的故事都不会发生。

所以请勇敢迈出第一步吧,迈出第一步的你也许会发现,一切也没有自己想象的那么困难。

坚持

坚持是成功的秘诀。刚进入一个新的领域,肯定会四处碰壁和遇到困难,这是很正常的。如果你认为自己在正确的路上,那么遇到困难,不要停下来。

雨后彩虹可能很快就会到来。

收集信息

如果是去工作,多去了解哪些公司的哪些部门正在招人,不要小看消息,选择一个hc多、缺人的部门,可以大大增加你面试通过的概率。

如果是去读研,多向读研的学长学姐请教,问问他们有什么东西要准备。早点开始准备,学好专业课,选好目标院校,看看专业课考哪几门,可以重点复习,同时多去问问复试考察的哪些内容,可以增加上岸的几率。

多利用身边的资源

现在网上的资料很多,学习什么方向,可以在知乎搜到很多攻略、学习资料,大家一定要好好利用这些学习资源,可以帮助你少走很多弯路,这里我把自己学习时用到资料,免费送给大家。

有了学习资料,要坚持学习,才能不断提高,看到更远的地方。

多尝试

人在面临选择时,常常会陷入迷茫。

如果当前阶段,还没有想清楚入海还是读研深造、工作岗位选择算法、还是后端、还是前端...,我建议都去了解了解,都去尝试一下,看看自己对那个更感兴趣,更加擅长什么方向。

尝试过后,选择一个最适合自己的方向,然后朝着这个方向努力。

结尾

五年过去了,我从本科双非,到拿到字节跳动、旷视科技等大厂offer,到ACM金牌,再到985研究生,我完成了一系列不可思议的成长与蜕变

由于篇幅限制,这次就写到里,后续我会分享在985读研的经历、以及有了那些新的体会、放弃大厂选择读研后不后悔 等,欢迎持续关注。

感恩一路上帮助过我的人。离开了他人的帮助, 若非命运的加持,自己可能什么都不是。

我会尽力演好命运所给自己的人生剧本,演好我的角色,尽可能的帮助更多的人。

靠着努力逆袭会成为传说,而因为放纵堕落就只是常事。

福利

我建了一个程序员资料分享社群,里面包含各种学习资料,包括计算机基础、数据结构与而算法、python、Java、C/C++、Linux、GO、设计模式、人工智能、数据库以及面试相关等方面的书籍,基本上涵盖了程序员所需要的所有书籍,此外还包含不少经验教程、学习视频,欢迎大家扫码加入!

这篇关于拿下 ACM 金牌!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/814011

相关文章

认识、理解、分类——acm之搜索

普通搜索方法有两种:1、广度优先搜索;2、深度优先搜索; 更多搜索方法: 3、双向广度优先搜索; 4、启发式搜索(包括A*算法等); 搜索通常会用到的知识点:状态压缩(位压缩,利用hash思想压缩)。

临床基础两手抓!这个12+神经网络模型太贪了,免疫治疗预测、通路重要性、基因重要性、通路交互作用性全部拿下!

生信碱移 IRnet介绍 用于预测病人免疫治疗反应类型的生物过程嵌入神经网络,提供通路、通路交互、基因重要性的多重可解释性评估。 临床实践中常常遇到许多复杂的问题,常见的两种是: 二分类或多分类:预测患者对治疗有无耐受(二分类)、判断患者的疾病分级(多分类); 连续数值的预测:预测癌症病人的风险、预测患者的白细胞数值水平; 尽管传统的机器学习提供了高效的建模预测与初步的特征重

【转载】ACM感悟

今天看了一篇我们学校前辈的ACM的感悟,觉得写的十分有道理,这里转载,文章还会不断的改进和更新。 原文链接:http://www.cnblogs.com/Chierush/p/3760870.html?ADUIN=1339764596&ADSESSION=1401536826&ADTAG=CLIENT.QQ.5329_.0&ADPUBNO=26349 声明:本文是写给弱校ACM新手的一点

我们依旧在追梦的路上-山东省第六届ACM比赛总结

这场比赛从结果而言达到了预期(金牌),从过程而言和我的预期相差甚远(打的太乱,个人发挥很差),还好关键时刻队友抗住压力,负责后果真的不堪设想。 热身赛 热身赛纯粹测机器的,先把A,B,C草草水过(A题小写x打成大写的也是醉了),我和老高开始各种测机器,long long不出所料是lld的,试了一下除0和数组越界的re问题,发现没有re,只有wa(甚至数组越界还AC了),至于栈深的话也没过多追

ACM东北地区程序设计大赛

不得不说随着参赛级别的提高,题目真的是越来越难啊,不过队长真是给力啊,在我们三个共同努力之下拿下了地区赛三等奖,哈哈我们可是大一唯一一只获奖队,终于在这次比赛打败了田大神。。。大神是失手了,俺和他差距还是挺大的。。。队友陈彤马上要去服兵役了,他说这是我们送给他最好的离别礼物,希望那家伙在部队好好干,以后谁干揍我!!!东北地区赛结束后,今年已经估计没机会参加亚洲区比赛了,赶紧补高数和线数啊!!别挂了

ACM比赛中如何加速c++的输入输出?如何使cin速度与scanf速度相当?什么是最快的输入输出方法?

在竞赛中,遇到大数据时,往往读文件成了程序运行速度的瓶颈,需要更快的读取方式。相信几乎所有的C++学习者都在cin机器缓慢的速度上栽过跟头,于是从此以后发誓不用cin读数据。还有人说Pascal的read语句的速度是C/C++中scanf比不上的,C++选手只能干着急。难道C++真的低Pascal一等吗?答案是不言而喻的。一个进阶的方法是把数据一下子读进来,然后再转化字符串,这种方法传说中

2014年ACM/ICPC亚洲区现场赛广州赛区总结

本来不想提这件事的,后来学姐找我谈心时提到这件事,我突然意识到在这件事情上我错了一次,明明答应的去参加这场比赛,最后临时决定不去......其实中间有很多很多原因 1:我和tyh,sxk临时不去主要是广州太远,我们身上money不够,呵呵。。。别笑我们,你以为我们是高富帅啊,去一趟广州消费要2个月的生活费,奖学金又没发,你让我找我妈要她辛辛苦苦挣来的工资吗?!从哈尔滨到广州单来回的火车票每个人就

软件设计师,突击 6 天,拿下 122 分

2015年9月,大三上学期,看到室友报了软件设计师,我也跟风报了名。复习 6 天(11月1日~11月6日,白天有上课),11月7日考试,顺利拿下 122 分。 图:成绩列表,上午57分,下午65分 <script type="math/tex" id="MathJax-Element-3"> </script> 图:软考证件。软考过后半年去拿的证件 软件设计师高分秘诀:

【UVa】10600 ACM Contest and Blackout 次小生成树

类型:次小生成树 题目大意: 为了举办ACM竞赛,市长决定给所有的n(3 <= n <= 100)所学校提供可靠的电力供应。当且仅当一个学校直接连到电站,或者连到另一个有可靠供应的学校时,才有可靠供应。现在给出在不同学校之间的布线成本,找出最便宜的两种连线方案。一个方案的成本等于其中所有学校之间连线的成本的总和。 题目分析: 次小生成树。 先求出最小生成树,然后枚举所有不在

acm 学习总结

最近也是新做了几个题目有的通过看题解然后自己敲出来一遍一遍的修改对动态规划也是有了点认识在拿到一个题目考虑他的思路时如果没法找到每个子问题之间的关系并且用数组将他们记忆就说明这个思路是错的而且题目有很多都是根据一个知识点不断的变式。每种类型的题也都有模板最近我在专门看这些模板,模板看的我也是一脸懵,其实我觉得模板这东西说好也好说不好也不好,好的时候你看出来哪种题适合哪种模板套进去题目就ac了,但是