網(wǎng)易互娛2021 暑期實(shí)習(xí) 游戲開(kāi)發(fā) 筆經(jīng)
三道題暖侨,難度不大,但細(xì)節(jié)比較多崇渗,調(diào)試比較麻煩字逗。2個(gè)半小時(shí)很緊湊。希望能被撈起來(lái)宅广。
A
題目:一只基金葫掉,每個(gè)周期都會(huì)穩(wěn)定的漲x元,持續(xù)m天乘碑,接著跌y元挖息,持續(xù)n天。問(wèn)收益達(dá)到p時(shí)所需的天數(shù)兽肤。若無(wú)解輸出-1套腹。
思路:分幾種情況考慮绪抛。
- 可能出現(xiàn)無(wú)解的情況只有
即永遠(yuǎn)漲不了。只能指望在最初的m天看能否漲到p电禀,若不行則無(wú)解幢码。
- 若
則必定有解,只是時(shí)間長(zhǎng)短問(wèn)題尖飞。一個(gè)周期
天症副,設(shè)在第k個(gè)周期達(dá)到預(yù)期收益p,可列出不等式
化簡(jiǎn)可得
對(duì)該式上取整即得到k政基。得到k之后再簡(jiǎn)單推算即可得到具體天數(shù)贞铣。
B
題目:給定一段模式字符串判定的程序,有大量的分支與循環(huán)嵌套沮明,問(wèn)輸入給定的字符串后辕坝,if語(yǔ)句被執(zhí)行了多少次。
思路:設(shè)一個(gè)初始ans=0荐健,然后對(duì)每個(gè)if語(yǔ)句改寫(xiě)成 if( ++ans && ...)
即可酱畅。
C
題目:給定語(yǔ)句變量定義,即一個(gè)變量代替某段話(huà)江场,這段話(huà)包括若干詞語(yǔ)纺酸。變量間可以嵌套定義,但不會(huì)循環(huán)定義址否。(定義關(guān)系構(gòu)成一個(gè)DAG)餐蔬。問(wèn)修改某個(gè)詞語(yǔ)(或語(yǔ)句變量)會(huì)導(dǎo)致多少個(gè)語(yǔ)句變量的值發(fā)生改變。
思路:題目本意是:給定一個(gè)DAG在张,問(wèn)從某點(diǎn)開(kāi)始能訪問(wèn)到多少其他結(jié)點(diǎn)用含。本題最難的還是輸入的處理。我的思路是先按行讀入定義帮匾,接著分割語(yǔ)句構(gòu)成單詞啄骇,放入map里,map映射成下標(biāo)瘟斜。按變量的定義順序反向建圖缸夹,跑dfs即可得到“被影響的點(diǎn)”。接著對(duì)于查詢(xún)螺句,也是直接丟進(jìn)map里得到下標(biāo)后查詢(xún)答案即可虽惭。