1. 程式人生 > 實用技巧 >CSP-J/S 2020 複賽遊記

CSP-J/S 2020 複賽遊記

CSP-J/S 2020 RP++

Day -4 / -3 / -2

這周每天中午都在機房打題,就沒回過宿舍

不睡午覺有點疲倦,不過也沒辦法

主要是改之前的一大堆的模擬題

還有幾個大佬中午也一起在機房

Day -1

呀,時間變緊了

趕緊打板子

線段樹,樹狀陣列,ST表……

BFSDijkstra , Tarjan ,樹上差分……

結果一個都沒考到

Day 0

畢竟是第一次參加提高組第二次普及了,還是很緊張的,畢竟初中參加不了noip

然而還是要上數學課

然而學校還是考場

所以機房用不了了?!

啊這

於是一大群人到處找電腦,跑到老師辦公室去,跑到藝術樓的機房(為什麼會有這個)去,甚至跑到化學老師那裡去借

最後居然在宿舍向宿管借到了。。。

服了

晚上也沒啥心情寫作業,隨便聊聊睡了


Day 1

CSP-J 2020

6:30 起床,發現起太早了,別人都沒起來

繼續睡起來等到 7:00 吃飯,又等到 8:00 才去考場

到考場一看,依舊沒有隔板 畢竟機房確實沒有

我左右兩位這次看起來專業一點了,起碼沒有玩 Scratch

終於看到一次有意思的密碼了

他山之石


T1

哇,這麼水,跟去年差不多

時間複雜度:O(logn)

用時:10 mins

期望得分:100 pts

民間資料自測得分:100 pts

實際得分:100 pts

T2

第一眼:插入元素,查第 k 大,平衡樹請

第二眼:平衡樹不是可以拿值域線段樹代替的嘛

(開始打)

(突然停下,看了眼題面)

第三眼:啥呀值域才 [0,600] ,桶裝不就完事了嗎?!

(不過洛谷評測機好像有點歧視我的程式碼,卡了30多次才過)

時間複雜度:O(600n)

用時:15 mins

期望得分:100 pts

民間資料自測得分:100 pts

實際得分:100 pts

T3

好傢伙閱讀題終於來了 還一堆廢話

啊這,字尾怎麼處理啊

平時模擬賽都是思維題都不會這些資料結構了(

好吧首先要建棵樹

樹上先把原來的值算出來

然後在自上而下 dp 一下,沒啦?

不過講真真不好打,就先去看 T4 了

……

看了一眼打了個暴力又回來了

挺長的,2k 程式碼

這時候快沒時間了,我隨便出了一個 5w 大資料

RE了???

害怕

可能是爆棧吧?我如此安慰自己

後來一想,之前寫樹哪一次爆過棧啊。。。

不理了,恐怕會掛成 20 pts

晚上一測,發現滿了

(兩天後)

我聽說 gets() 不能用啊啊啊啊啊

(一週後)

gets() 居然還是有分

不過這東西太容易出鍋了能不用就不要用吧

時間複雜度:\(O(n)\)

用時:90 mins

期望得分:20-70 pts

民間資料自測得分:100 pts

實際得分:100 pts

T4

第一眼:BFS

( T4 還能考 BFS ?)

第二眼:網路流

(看了眼資料範圍,8行)

第三眼:\(O(n^3)\) dp

(看了眼資料範圍,70 pts???)

然後我就先打了個暴力,又回去 T3

後來再想了想,把前和後更新的分開,然後拿字尾最大值搞成了 \(O(n^2)\)

然後最富戲劇性的事情來了

我直接把暴力交了上去

……

時間複雜度:\(O(n^3)\)\(O(n^2)\)

用時:80 mins

期望得分:100 pts

民間資料自測得分:70 pts

實際得分:70 pts


期望得分:320-370 pts

民間資料自測得分:370 pts

實際得分:100+100+100+70=370 pts

還是挺穩的

所以大家千萬注意不要交錯檔案啊啊啊啊啊啊

後記:晚上測了測隔壁桌的,前桌 170 pts ,後桌 230 pts

針不戳

CSP-S 2020

中午回去睡覺,不在話下

這次大家還是蠻重視的

下午一進考場,不說別的,平均高度就相差很多(關注這個幹嘛

可以攻玉

(話說開考時這密碼還挺難辨認的折騰了幾分鐘)


T1

哇,一頁題面

哇,閱讀理解

哇,煩人模擬

開 $ \ $ 門 $ \ $ 紅

全機房都在做閱讀題的感覺你體驗過嗎

不說別的,這題面我硬是讀了十分鐘

大概從1582年開始分類

然後一年一年列舉,不然太煩了

然後打著打著我才發現 公元前1,5,9,... 年是閏年

這題太繁瑣了我也不講這麼多了

大概 40 mins 才調出來

然後發現T飛啦

好像是年跳得太多了,模個400就行了

(但是好像被老爺機卡了……)

然後沒開 long long

100->90

時間複雜度:\(O(T(n/400+k))\)

用時:45 mins

期望得分:100 pts

民間資料自測得分:90 pts

實際得分:90 pts

T2

第一眼:又是閱讀……不會很難吧

第二眼:這……模擬?

第三眼:不會真的是模擬吧。。。

好像有點水(後記:爛了)

拿個map記錄買的飼料,再列舉哪些位可以買即可

但是你知道嗎,map 存 1e6 會炸

90->60

時間複雜度:\(O(nlogn)\)

用時:20 mins

期望得分:100 pts

民間資料自測得分:60 pts

實際得分:60 pts

T4

感覺進入正片了

哇哦,蛇會思考了(

一隻蛇要是不想玩了,立馬就結束了

所以一定是最強的蛇不停地吃,只到有一隻不想吃了

不想吃了,肯定是因為它能預測未來,再吃就會被別人吃掉

然而有可能它本來能被別人吃掉的,但在那之前遊戲已經結束了

所以我們可以把整個過程弄出來,記錄每一次的最大最小值

如果有一隻蛇這一輪被吃掉了,而它之前有一次吃了別人,它就會反悔

好的那麼這樣就沒問題了

但是當時我太傻了又沒想清楚,結果做法假了

但奇怪的是洛谷資料只掛了一個點(聽天由命)

時間複雜度:\(O(n^2)\)

用時:60 mins

期望得分:55 pts

民間資料自測得分:50 pts

實際得分:40 pts

(資料也太水了)

T3

資料結構題?

亂想了想,好像可以拿拓撲排序+線段樹合併做(當然正解不是這個)

但線段樹合併……不太好打

於是先隨便打了一個 20 pts 的暴力

這個區間乘也太耗時間了,線段樹?

整體區間乘耶,就不麻煩線段樹了

弄一個 laz ,到時候所有數都乘上 laz 不就行了嗎?

那加 k 的話就變成加 k/laz

然而我忘記特判0了

75->50

(這資料真的不是隨機出來的嗎)

距離結束還有一個小時,開始搞線段樹合併

然後……自然也沒調出來

程式碼都 3k

時間複雜度:\(O(?)\)

用時:30 mins

期望得分:30 pts

民間資料自測得分:25 pts(乘0的逆元)

實際得分:50 pts

(這真的太水了吧)


掛得好多啊……

太菜了

期望得分:305 pts

民間資料自測得分:205-225 pts (差得有點多啊)

洛谷 90+60+25+50=225

Outiku 90+60+75+50=275

牛客 90+60+80+25=255

實際得分:90+60+50+40=240 pts

其實還行?

真心希望能拿個一等獎,也不枉兩年的 OI 生涯與努力

希望能卡線

(希望渺茫)


希望能撈個雙一!