8.27 米哈游筆試
2小時,10單選,15多選,3編程。
選擇題考點涉及NAT、TCP、UDP、DNS、IGMP、RIP、vector、auto、enum、結(jié)構(gòu)體、B+樹、sql語句、get/post、文件共享方式、進程切換等。
- 第一題
題意:在二維坐標系上,有人和2只怪物,人的起始位置在(1,1),怪物分別在(x0,y0)和(x1,y1)。人有起始生命值H,每秒可以選擇上下左右方向移動一格,如果當前格子上有怪物,也可以花費1秒和怪物戰(zhàn)斗。怪物的起始戰(zhàn)斗力為h[i],每隔a[i]的時間會提升b[i](1≤a[i], b[i]≤1e5)。如果戰(zhàn)斗時人的剩余血量≥怪物戰(zhàn)斗力,人可以扣除怪物戰(zhàn)斗力數(shù)值的血量來打敗怪物。求人打敗兩只怪物后剩余的最大生命值,如果無法打敗則輸出“yingyingying”。
題解:只有兩種策略,先打怪物1再打怪物2,或先打怪物2再打怪物1。各算一下,取最大值。(注意怪物的戰(zhàn)斗力可能增長到爆int)
- 第二題
題意:有n(≤1e5)個數(shù)的數(shù)組,A和B兩人進行博弈。開始時在數(shù)組中隨機一個位置,接下來每人要選一個位置在上一個數(shù)左邊且比上一個數(shù)小的數(shù),無法選擇的人輸。求先手贏的概率,用分數(shù)表示。
題解:如果初始隨機數(shù)x的左邊存在小于x的數(shù),A只要選擇左邊最小的一個,B就無法再選了,A必贏;否則A必輸。統(tǒng)計一下有多少個這樣的x,x/n(除掉最大公約數(shù))即為答案。
- 第三題
題意:給出一棵n(≤1e5)個點的樹,每個點上有一個字符m或h或y。求樹上所有路徑組成的字符串中,包含mhy子串的數(shù)量。
題解:假設根節(jié)點字符為h,子節(jié)點為m的子樹大小=【x,y,z】,子節(jié)點為y的子樹大小=【a,b,c】,那么對答案的貢獻為(x+y+z)*(a+b+c)。那么dfs統(tǒng)計子樹大小,再在每個字符為h的節(jié)點上按該公式計算,就能得到總的答案。
————————————————————————
update
9.7收到了拒信,要么就流轉(zhuǎn)到測試開發(fā)那邊,麻。
真就路過條狗都給我丟一份測評+筆試啊,做完再掛我。