周日翹課到忽,參加了一下比賽橄教。這還是第一次參加實(shí)時(shí)的比賽清寇。。賽中被卡第三題,真是太囧了。
首先是比賽的時(shí)候宿稀,沒理解題意耐量。之后樣例的輸出更新了,然后開始進(jìn)入不斷卡題的狀態(tài)店溢。。。
Validate Stack Sequences
151 / 151 test cases passed.
Status: Accepted
Runtime: 4 ms
雖然是第2題喂链,但題意比較簡(jiǎn)單。開場(chǎng)11分鐘就先過了這題妥泉。
這里我用棧模擬push和pop操作椭微,當(dāng)pop操作不可取時(shí),則嘗試push操作盲链。直到pop操作非法蝇率。
Bag of Tokens
147 / 147 test cases passed.
Status: Accepted
Runtime: 4 ms
一開始以為是DP,寫了一半匈仗。發(fā)現(xiàn)可能可以用貪心水過去瓢剿。貪心策略:
- face up. 優(yōu)先開費(fèi)Power少的Token,攢point
- face down. 直到power值不夠用時(shí)悠轩,用point開最大的Token间狂,攢power
Minimum Increment to Make Array Unique
59 / 59 test cases passed.
Status: Accepted
Runtime: 68 ms
開賽的第一題,讀題的時(shí)候眉頭一皺火架。鉴象。有點(diǎn)思路,但沒有把握就放到第三題來做何鸡。
因?yàn)橐淮尾僮魇沁x擇一個(gè)元素纺弊,增加1,所以結(jié)果必然是遞增的骡男。差不多也是貪心策略淆游,從當(dāng)前最小值開始枚舉最合適的值,使其唯一且操作次數(shù)最少隔盛。
Most Stones Removed with Same Row or Column
68 / 68 test cases passed.
Status: Accepted
Runtime: 1804 ms
比賽的時(shí)候犹菱,前三題用了41分鐘。吮炕。還剩49分鐘腊脱。理論上是可以完成比賽的。龙亲。
結(jié)果卡題了陕凹。悍抑。
一開始是模擬移除,10000*10000 的矩陣杜耙,遍歷stones
枚舉是否可以移除搜骡。提交了兩次之后發(fā)現(xiàn)邏輯不對(duì):模擬移除的一行或一列至少會(huì)保留一塊石頭,但實(shí)際上最多移除是可以不用保留的泥技。
最后理解題意要求是:同行或同列的石頭可以聚合為一塊石頭浆兰。使用并查集或 搜索遍歷即可。