2021年6月組會分享--算法競賽入門及背包問題解析

一 競賽簡介

萬惡之源 各種競賽知識的匯總喳挑。

1. 賽制介紹

https://zhuanlan.zhihu.com/p/129311302

2. 平臺介紹

leetcode 主找工作,周賽/雙周賽滔悉,每周都有伊诵,時間短,可查看別人的代碼回官,學(xué)習(xí)別人的優(yōu)秀代碼和解題思路曹宴,成長快
codeforces 主競賽,每周也會舉辦比賽(賽題質(zhì)量高歉提,全英文)
洛谷 (主競賽笛坦,國內(nèi)的高質(zhì)量平臺,常舉行比賽苔巨,模板題講解清晰版扩,大佬多)
賽氪(主競賽通告,國內(nèi)的OJ平臺侄泽,主要優(yōu)點是國內(nèi)競賽的新聞會在這個平臺發(fā)布庸毫,可多關(guān)注)
殴涤冢客 (主工作,也有周賽,要自己處理輸入輸出挠乳,比leetcode更貼近工作題/競賽題)
其他大學(xué)的OJ也有不錯的冰悠,例如北大的poj鸟缕, 杭電的hduoj鸭限, 電子科大的cdoj

3. 競賽介紹

藍(lán)橋杯(一般四月份舉行初賽,認(rèn)可度高析桥,獲獎難度低司草,非常推薦參加) 獲獎可獎學(xué)金加分/申請實踐分(不需要助教拿學(xué)分了,可選擇拿工資)尤其推薦參加python組泡仗,c++組一般是打ACM的真大佬埋虹,卷不過;java組參賽人數(shù)太少沮焕;python組研究生和本科生同組吨岭,優(yōu)勢明顯。報名費300塊峦树,可信軟學(xué)院代繳辣辫,獲得國獎還有額外獎勵。
傳智杯 (一年一屆魁巩,一般10-12月舉辦)
全國大學(xué)生算法設(shè)計與編程挑戰(zhàn)賽 (每個季度一次比賽急灭,才舉辦到第二屆,認(rèn)可度一般)
電子科技大學(xué)ACM校賽(鏈接是2021年的谷遂,沒有官網(wǎng)葬馋,一般四五月份舉行,請關(guān)注《成電微教務(wù)》肾扰,會有報名通知)
“聯(lián)發(fā)科技杯”電子科技大學(xué)IEEEXtreme極限編程校內(nèi)賽(鏈接是2021年的畴嘶,沒有官網(wǎng),一般四五月份舉行《IEEEUESTC》公眾號集晚,會有報名通知)
華為軟件精英挑戰(zhàn)賽(一般三四月份舉行窗悯,不是常規(guī)的編程算法競賽,偏工程中的實際應(yīng)用偷拔,感覺難度略大)
中興捧月杯(一般四五月份舉行蒋院,難度比華為軟挑低)

獲取比賽消息的渠道:信軟學(xué)院有個學(xué)科競賽的qq群(1074685825),計算機(jī)學(xué)院通知群也有部分競賽通知莲绰,賽氪平臺的通知欺旧,相關(guān)的主辦方公眾號等。

二 我的一點經(jīng)驗

1. 語言選擇

  • C++? java? python? even javascript?
  • C++ 新入坑的必選
  1. 對數(shù)據(jù)控制的極致蛤签,內(nèi)置的容器辞友,運行效率極高,使用簡單震肮;內(nèi)置的算法踏枣,快排/二分查找/找下界等,可自定義數(shù)據(jù)結(jié)構(gòu)钙蒙,極其的好用茵瀑;
    例題 力扣周賽第三題
  2. 運行效率極高,很多數(shù)據(jù)規(guī)模臨界的用例躬厌,C++能過马昨,但是python過不了;
    例題 IEEEXtreme極限編程校內(nèi)賽 (比賽完看不了題了)
  3. 例題講解的示例代碼很多都是C++ 寫的,包括力扣周賽的排行榜前段的大佬;
  4. 各種OJ必定支持的一門語言.
  • python 藍(lán)橋杯必選 深度學(xué)習(xí)之友
  1. 藍(lán)橋杯暴打本科生的不二之選扛施,只會暴力解法都能一等獎的天選之組;
  2. 極致的代碼簡化鸿捧,神奇的切片操作,寫起來非常省心;
  3. 跑模型必須要會的一門語言疙渣,即使不搞神經(jīng)網(wǎng)絡(luò)算法匙奴,畢設(shè)也一定會要跑模型的;
  4. 主流OJ支持較好,但是比較老的OJ就不那么好了妄荔。(說的就是成電的OJ,ACM校賽居然只支持C++和java)
  • java 工作之友
  1. 后端開發(fā)必會泼菌,spring全家桶要用的賊溜谍肤;
  2. 用來寫競賽算法嘛,就恩恩恩恩哗伯。荒揣。。個人不太合適焊刹,既不如C++運行效率高系任,沒指針操作;也不如python代碼簡潔虐块,有點雞肋俩滥。之前ACM國際大賽上有隊伍用過java,后來也棄用了贺奠。當(dāng)然用來刷題霜旧,練java的熟練度,方便找工作的也很好敞嗡,有不少同學(xué)也是這么做的颁糟;
  3. 主流OJ的支持較好,目測比python好喉悴。
  • javascript 前端玩家打算法比賽的首選
  1. 之前看彥哥和然哥用過棱貌,我自己不會,感興趣的咨詢他們吧(很慚愧)箕肃;
  2. 支持的平臺較少婚脱,leetcode是支持的,但是主流的OJ支持率很慘淡勺像。
  • 總結(jié):不同語言有不同的適用環(huán)境障贸,一般意義上來說沒有誰優(yōu)誰劣,只能說對某個任務(wù)是否好用吟宦。

2. 編輯工具選擇

  • vim 永遠(yuǎn)的神
  1. 主鍵盤毀滅者篮洁,可完全無視鼠標(biāo)的存在
  2. 單文件編輯最好用的編輯器
  3. 服務(wù)器文件編輯的最好選擇,也許是唯一的選擇
  4. 功能強(qiáng)大的代碼補(bǔ)全插件殃姓,C++袁波,python,java均支持
  5. 在編輯器內(nèi)執(zhí)行命令的特性讓人欲罷不能
  6. 內(nèi)置的gdb調(diào)試工具蜗侈,代碼調(diào)試較為方便
  7. 陡峭的學(xué)習(xí)曲線讓人望而生畏


    編輯器學(xué)習(xí)曲線.png
  8. 其他資料:
    vim環(huán)境搭建
    vim半小時入門官方教程篷牌。命令行執(zhí)行下方代碼:(如果要指定語言,用后面兩個命令即可踏幻,分別是英文和中文枷颊,推薦用英文版,方便編輯)
vimtutor
vimtutor en
vimtutor zh

簡要講解vim的三種模式。


vim三種模式.png
  • pycharm python之友
  1. 不用過多解釋夭苗,寫python的首選工具
  • idea java必選
  1. 也不用過多解釋信卡,寫java的首選工具

3. 常用技巧

  • 刷題的結(jié)構(gòu)組織
    按照各個OJ平臺作為一級目錄,題目編號作為二級目錄听诸,二級目錄下的是源代碼和輸入輸出文件坐求。整個文件夾用git做版本管理蚕泽,可推送到自己的github上晌梨,避免由于系統(tǒng)崩潰等原因?qū)е碌臄?shù)據(jù)丟失。
  • 輸入重定向
./a.out <in.txt
python3 my.py <in.txt
  • 輸入/輸出重定向
./a.out <in.txt >out.txt
python3 my.py <in.txt >out.txt
  • 結(jié)果自動對比
diff out.txt std.txt
  • 對拍
    對拍是個啥须妻,用來做什么的
  • 暴力打表找規(guī)律
    一個網(wǎng)友的例子
    古人云:騙分過樣例仔蝌,暴力出奇跡。暴搜掛著機(jī)荒吏,打表出省一敛惊。
    俗話說:十年OI一場空,不用long long見祖宗绰更。
  • 藍(lán)橋杯如何查文檔
    python是提供了內(nèi)置package的使用文檔的瞧挤,查詢方式如下:
python3
>>> help()
  • 輸出帶有固定字符的題目,一定要用CV儡湾,別過于相信自己的眼睛和手
    之前比賽有題目的輸出只有Y5S!或者NO特恬,比賽結(jié)束的時候一群人覺得自己代碼沒錯,結(jié)果提交上去一直WA徐钠,有人就提示說輸出的不是YES!中間的是個5.
  • 要有平和的心態(tài)
    wa.jpg

    不是大佬的話癌刽,建議還是跟榜做題,挑AC多的題目做尝丐。
    也不要死磕显拜,某題做不出來,或者一直WA爹袁,該放棄就放棄远荠。

三 背包問題

經(jīng)典中的經(jīng)典 背包九講
例題:
01背包
完全背包
多重背包(二進(jìn)制優(yōu)化)
混合背包
二維費用背包
分組背包
依賴背包

四 動態(tài)規(guī)劃與記憶化搜索的關(guān)系探討

一個大佬的博客

五 其他資料

cpp reference
倍增思想白話講解
操作系統(tǒng)革命 開源的哲學(xué)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市失息,隨后出現(xiàn)的幾起案子譬淳,更是在濱河造成了極大的恐慌,老刑警劉巖根时,帶你破解...
    沈念sama閱讀 217,734評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件瘦赫,死亡現(xiàn)場離奇詭異,居然都是意外死亡蛤迎,警方通過查閱死者的電腦和手機(jī)确虱,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評論 3 394
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來替裆,“玉大人校辩,你說我怎么就攤上這事窘问。” “怎么了宜咒?”我有些...
    開封第一講書人閱讀 164,133評論 0 354
  • 文/不壞的土叔 我叫張陵惠赫,是天一觀的道長。 經(jīng)常有香客問我故黑,道長儿咱,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,532評論 1 293
  • 正文 為了忘掉前任场晶,我火速辦了婚禮混埠,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘诗轻。我一直安慰自己钳宪,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,585評論 6 392
  • 文/花漫 我一把揭開白布扳炬。 她就那樣靜靜地躺著吏颖,像睡著了一般。 火紅的嫁衣襯著肌膚如雪恨樟。 梳的紋絲不亂的頭發(fā)上半醉,一...
    開封第一講書人閱讀 51,462評論 1 302
  • 那天,我揣著相機(jī)與錄音厌杜,去河邊找鬼奉呛。 笑死,一個胖子當(dāng)著我的面吹牛夯尽,可吹牛的內(nèi)容都是我干的瞧壮。 我是一名探鬼主播,決...
    沈念sama閱讀 40,262評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼匙握,長吁一口氣:“原來是場噩夢啊……” “哼咆槽!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起圈纺,我...
    開封第一講書人閱讀 39,153評論 0 276
  • 序言:老撾萬榮一對情侶失蹤秦忿,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后蛾娶,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體灯谣,經(jīng)...
    沈念sama閱讀 45,587評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,792評論 3 336
  • 正文 我和宋清朗相戀三年蛔琅,在試婚紗的時候發(fā)現(xiàn)自己被綠了胎许。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,919評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖辜窑,靈堂內(nèi)的尸體忽然破棺而出钩述,到底是詐尸還是另有隱情,我是刑警寧澤穆碎,帶...
    沈念sama閱讀 35,635評論 5 345
  • 正文 年R本政府宣布牙勘,位于F島的核電站,受9級特大地震影響所禀,放射性物質(zhì)發(fā)生泄漏方面。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,237評論 3 329
  • 文/蒙蒙 一北秽、第九天 我趴在偏房一處隱蔽的房頂上張望葡幸。 院中可真熱鬧最筒,春花似錦贺氓、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至邢锯,卻和暖如春扬蕊,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背丹擎。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評論 1 269
  • 我被黑心中介騙來泰國打工尾抑, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人蒂培。 一個月前我還...
    沈念sama閱讀 48,048評論 3 370
  • 正文 我出身青樓再愈,卻偏偏與公主長得像,于是被迫代替她去往敵國和親护戳。 傳聞我的和親對象是個殘疾皇子翎冲,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,864評論 2 354

推薦閱讀更多精彩內(nèi)容