切換
舊版
前往
大廳
主題

Educational Codeforces Round 117 隨筆紀錄

端神 | 2021-11-24 21:03:25 | 巴幣 0 | 人氣 114

剛剛看完某競程YTer的影片,覺得回顧一下賽中解題過程能改進自己一些錯誤的思路,加上上次打cf還是在七八月,實在有點久了,而且這次打得也是滿飲恨的,不過也是因為打得不太理想才有紀錄的價值。
第一次寫紀錄類型的東東,不知道要放哪所以先丟在小屋,我覺得固定把學到的東西記錄下來會有督促的作用,估計過幾天有空就自己架個網站放吧
-----------------
兩小時在下午的比賽,時間跟平常的不太一樣,好像因為是俄羅斯icpc的初賽才會這樣,不過他們的初賽才兩小時也太短==
題目一樣簡短敘述或不贅述,因為感覺要寫很久
比賽連結:點這個
PA
給好幾個點,求每個點和原點在曼哈頓距離下的中間點(也是整數點),沒有就輸出-1
一開始就覺得直接除以二,不能整除的就(x/2,y/2+1)這樣,又在想說如果有負數要額外判斷覺得有點麻煩,仔細一看發現都是0<=x,y<=50,驗了一下一開始的想法就丟出去了
PA AC 8/0
其實感覺這題大概五分鐘以內就能AC了吧,但有時候cf的a都會有點梗,記得一年前有一次被a梗到,分數直接扣爛,之後我都會怕自己又卡住,好像不太好==

PB
應該有很多解,我是先把a跟b各自放在第一跟最後,後來貪心的放入最大和最小的數字,如果這樣還放不了,那就真的沒辦法了。
驗了一下想法覺得沒錯,從讀題到AC花十七分鐘,應該算還可以。
PB AC 25/0

PC
雖然放在C,不過我覺得滿水的,可能是因為最近寫了不少貪心二分搜,找出不被ban的最大訊息數,如果不到k就加一
PC AC 50/0

PD
這題應該是我紀錄的重點,只能說自己心理素質太低了,看到這題就想說完蛋了,腦袋一片空白,想說又是什麼鬼之數學,雖然很像gcd但好像又完全不一樣,看一下範圍只覺得爆搜應該會爛掉而沒有去動筆看一下狀況,直接跑去看PE,果然一片空白,連正確答案是啥都不知道。在ICPC或一般的比賽,這樣做滿正常的,但在CF上不太優,PD就算一個分水嶺了。
之後就跟同學講一下廢話,覺得這樣不行,就寫了份爆搜的解丟上去,果然TLE,再優化一下也爛掉,最後想説把死馬當活馬醫,把a,b能跑出的c寫出來,發現特別少而且都跟輾轉相除法跑出來的東西有關,拿筆寫了一下發現不管用改變a或b,最後都會回到同一條路上,跑出來的東西不過是減法版的輾轉相除法,改了之後又TLE,後來發現答案只會出現在a>c>b,那如果兩個都比c大就直接mod,如果(a-c)%b==0就是true,這時候只剩三十秒,丟上去TLE,最後發現自己少設了false的判定!!!打完之後比賽已經結束了。
等到能judge時,丟上去看到AC的那一刻
幹!
最後分數因為前面還行所以稍微加了一點,但因爲我自己覺得是超級難題,沒有動筆試試就放棄實在滿可惜的。
PE看了題解覺得超級數學,後面兩題還沒看,應該會補,但估計也是這個套路。
PE
看起來很像數年前愛出的記憶化搜索,但N<=3e5應該會炸掉,看到時沒仔細想K<=20會怎樣就放棄了,題解是要先證出如果拿了最佳的二十封信,再拿二十一個或更多答案不可能會更大,如果會更大就代表前面拿的不是最佳,O(KNlogN)。
模擬一下要解出來的話狀況大概是怎樣
先寫出拿K封信每個人的期望值會怎麼樣=>看到k<=20覺得怪怪的=>假設K=2,K=3試試看,發現選擇的信未必和前項有關=>不一樣的原因是有些期望值會因為信的數量而下降,有些不會=>若K>=21,則所有期望值都會下降相同比例,那大小關係就不會變,故我們從大道小取更多答案不會變大,否則與大小關係矛盾=>做20次nlogn的找解=>得解
這題難度大概2200吧(從通過人數猜的),這等級的題目不是麻煩DP就是毒瘤資結,大部分我都覺得有夠難想,但是這題分析下來,我覺得自己是有機會想到的,但沒有冷靜去分析和思考,想不通怎麼nlogn解就放棄了,如果有先列出一些狀況應該會好很多,這種限時單人賽,很多平常的壞習慣就出來了。
這場根本就是數學大賽,沒有什麼資結或dp,非常不cf的一次比賽。
短期目標是能盡快上千六(其實早該上了,理想是能上紫色),之前因為打比賽容易有壓力而且時間很爛就不太打,但現在實力有所提升,就覺得應該要挑戰自己了,之後如果還會再寫這種流水帳應該會放在自架網站上ㄅ,讚讚

創作回應

更多創作