[其他] noip 互測 Round 3 組題過程


記錄一下出題的過程。

關於 t1:

這是最早就定好的,在萱有次模擬賽看錯題的時候就覺得可以作為一個簡單題放上去。

開始覺得還行,在某一個周末突然意識到是個笛卡爾樹板子,但是似乎更好地對標 noip t1 了,所以沒關系。

造數據的時候重造了好幾次,不小心全造成大數據了,不小心 srand() 有問題……

卡了一個已知理論 \(O(n^2)\) 的暴力,來自 hyf 暴力過原題的代碼,因為只打算造一份這樣的數據,所以開了子任務依賴。

在最后抓萬來實現笛卡爾樹的做法時,發現隨機數據比之前的做法快很多,於是又重新確定了時限。

然后發現初版 std 帶 \(\log\),因為用了 sort,於是又重新確定了時限。

關於 t2:

屬於是斃了兩個題。

第一次,題目卒於題面比較詐騙,結論感覺有點離譜。

第二次,本來是放萱的題,但是還沒來得及造,萬造了一個 t3,他造完后,萱意識到 t2,t3 類型有點相似,這好像不太好。因為大家都不想驗萱那個題,就把 t3 換到了 t2。把那個題丟一邊去了。

然后就被抓去想 t2,大概是發現 11 可以隨便動,於是就有了一段 1 的部分分。

仿照今年 csp 出了全 ? 的檔,本來說要不要拿 BM 看下能不能推,后來 OEIS 到了就覺得也差不多行?

最后萱不想了,然后覺得 t2 結論比 t3 神秘,不過在 OI 里也不算難的,感覺和那種兩個人相遇會掉頭的可以看成直接往前走差不多()

關於 t3:

屬於是斃了兩個題。

第一次,題目卒於一維比較簡單,拓展到二維出問題了。

第二次,題目卒於關鍵結論是大家非常熟悉的,擔心太簡單了。

萬將一個 div B 加了 \(4\)\(0\),並且改成帶修出出來成了 t3。

然后萱就被抓去想 t3,萱只會 \(O(qn^2)\),然后萱繼續想。萱把奇數偶數抽象成 \(01\) 想了一下放數的過程,萱悟了。

萱會貪心了,於是可以 \(O(qn)\) 了。意思是萱不打算驗要上數據結構的那一檔。

萱開始寫題面,萱開始寫數據生成器,萱開始改 std 的輸入輸出格式,萱開始寫 chk,拍不上!!!

萱調了一個晚上。萱開始造特殊性質,要保證數據合法真是太不容易了,萱如是說。

本來是 \(2s\) 的時限,然而隨機數據 std 要 \(1\sim2s\) 不等,於是時限成了 \(3s\),並且開 O2。然后 chk 跑過了 subtask5,於是每個子任務時限就不一樣了。

萱開始造 hack 數據,隨機只能造小的,萱已經自閉不想手捏數據了,想了想好像會一個一個 subtask 寫的人好像不多,就不造大的 hack 數據了,然后開了子任務依賴。

關於 t4:

屬於是斃了兩個題。

第一次,是州州突然 Q 萬說有 idea,然而題目卒於不到 t4 難度。

第二次,題目卒於萬覺得自己毛估估差不多會正解,可能也簡單了。

從並不神秘的地方找了一個交互題。

然后萱被抓去想 \(t4\),萬說自己會 \(n^2\),萱開始嚶嚶嚶,說自己連 \(2^n\) 也不會。然后萱繼續想。

萱發現查一個數查了個寂寞,查兩個可以判斷奇偶性,查三個??

萱回想了省隊集訓,似乎還有一種查法是對着一個很大的集合查,於是萱突然悟了,自己似乎可以找到 \(n\)

差不多就可以寫 \(n^2\) 了,萱寫了一份 \(O(\frac{n^2}{4}+\frac{n}{2})\) 的代碼,然后萬驚訝地發現自己下界卡的是 \(O(\frac{n^2}{2})\),這告訴我們交互題絕對不可以毛估估下界。

然后萱又剪了個枝,於是重造數據再卡了一波下界。然后 \(p_1=1\) 的部分分就無了。

關於其他:

  • 因為萱不擅長造題,所以承擔了大部分的文字工作。
  • 雖然萱覺得 t2 結論比 t3 神秘一點,但是大概 t3 總體難一點,所以這樣組題了,希望不要無意模擬今年 CSP 難度。
  • 雖然這是個互測但是萱好像被每題都測了。
  • std 都是萬寫的。
  • 為了使題目導出的時間正確,調整了系統時間。


免責聲明!

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



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