[整理]CSP-S 2020 初賽詳解


考前來水一水去年題……希望明天 rp++

選擇

CBBBD BAACC CDBDC
全是水題,但最后一個常識可能確實沒那么常。

閱讀程序

1

FFAACC
實現的是對於數列中所有不相等的數對求按位或最大值。
只需要注意不相等和把加和減按位與轉化成按位或就可以了。

2

FTXBAD
手動實現了一個二分查找第 \(k\) 小元素。
需要注意判斷題問的是運行錯誤,但即使這樣好像也有一些爭議,因為實現不精細導致 \(n=1\) 時會出問題……
第三個說是 \(O(\log^2n)\),但我怎么算都是 \(O(\log n)\)……
第四個很顯然,只有第一遍需要翻轉整個序列。
第五個顯然平均復雜度是線性,最壞復雜度是每次都隨機到頭上。
第六個相當於取了但沒有取,每次還是要跑一遍所以是平方。

3

TFFDDC
題面看起來很嚇人,仔細一看是因為寫了一個屑線性 map 和隊列。
去掉多余的東西可以發現是每次把一個固定位置的字符拿到開頭或結尾,用雙向 BFS 求幾步把 \(s0\) 變成 \(s1\)
復雜度不會算……為啥是 \(O((n!)^2n)\) 啊……
第四個顯然是做不到的。
第五個可以玄學找規律:憑借經驗和感覺或者強行構造可以發現大概平方級別的樣子,正好拿給出的值插一下就行了。
第六個題目給的提示很清楚了,手動模擬一下發現如果 \(n\) 為奇數 \(m\) 為偶數那么往左往右都是偶數對發生變化,不一定有解。

完善程序

1

DBDDB
水題,注意整數不能直接除之類的細節即可。

2

DBCAB
警惕 CCF 怪異位運算。
第一個直接減 lowbit,但是 CCF 寫得比較陰間。
第三個注意細節,空子序列的價值為 \(0\)
第四個是枚舉第二維,那根據定義選擇即可。
第五個是枚舉第一維,應該只算前八位的貢獻,所以排除 C。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM