原创 gym104090 The 2022 ICPC Asia Hangzhou Regional Programming Contest I. Guess Cycle Length

題目大意 交互題 給出一個長度爲n的排列p,初始有一個人在某個位置(未知) 每次詢問可以給出一個步數x,然後人會向前走x步並返回所在位置的數字 在1e4次詢問內找到n,n<=1e9 保證排列在交互前固定 題解 顯然,要想知道n就必須要重複走

原创 CF1638E Colorful Operations (二分trick)

顯然操作的顏色段是O(n)的,所以在每一段被破壞時再補上(出現時間~消失時間)這一段的貢獻,顯然貢獻是一樣的(顏色相同,且是整體加,所以每個都加 一點trick: 關於怎麼把二分寫好看,可以參考set的寫法,在最後加一個end,變成[1,e

原创 arc瞎做1 arc131D arc131E arc146C arc146D arc139C arc140D arc140E arc127C arc127D arc127E

目錄arc131D - AtArcherarc131E - Christmas Wreatharc146C - Even XORarc146D - >=<arc139C - One Three Ninearc140D - One to On

原创 CF1513 E Cost Equilibrium / F Swapping Problem

E 先做差,發現排列如果出現正負正負或負正負正就會掛,調整一下匹配即可使min變大 同時如果正和負都>1,則不存在中間一段左右兩段其他的,這樣也會掛 然後隨便組合一下 F 手玩發現調整的一定是a1<b1,a2>b2,且a1<a2,b2<b1

原创 CF1511 F. Chainword / G. Chips on a Board

F 太屑了,沒寫 如果直接暴力記矩陣的話是40*40=1600邊長,顯然不行 發現如果上下都沒有匹配結束,則後面的字母是唯一確定的(按位比較,不同則無解) 設f[i,x]表示串長i,一邊匹配到x,則轉移大概是枚舉另一邊要接的串,有Fi=Fi

原创 CF1720E. Misha and Paintings

題意 給出n*n的矩陣,ai,j∈[1,n*n],現在要矩形覆蓋若干次,每次把一個正方形的ai,j改爲x,求最少的次數使得最後有k種不同的數 n<=500 題解 設sum爲初始不同的數,若sum<k則顯然只能一個個加,ans=k-sum 若

原创 Codeforces Round #792 A~G

難度D>E>G>F>B>C>A A 當n>=3時都可以先把min換到位置2,然後隨便找兩個換,直到n=2時換12,輸出min 否則n=2時只能直接換,輸出a[2] B 我寫的是a+b*c,b,c,當然也可以直接a+b+c,b+c,c C 隨

原创 Codeforces Round #808 A~D

A 結論:假設在某個位置q減1了,則後面要全選(被痛擊之後失去理智) 證明:如果後面某個位置沒選,則可以把第一個q-1的位置和其交換一下,中間的至少+1,後面的不一定-1,極限情況也是中間+1後面不變,一定不劣 由於第一個-1取決於q,所以

原创 6279. 2019.8.5【NOIP提高組A】優美序列

結論1:若兩個優美區間相交不包含,則二者重合部分也是優美區間 證明1:設兩個區間爲A和B,則A-(A∩B)的部分一定是A在數域上的前綴/後綴(否則會有空,數字不重複,加上B-(A∩B)後不能填補空缺,不是優美區間),所以A-(A-(A∩B)

原创 arc141C - Bracket and Permutation

半年沒寫題解了,寫一篇來冒個泡 題目大意 給出長2n的排列p和q,求長2n的括號序列S(左右括號分別n個,不要求合法),使得在所有將S帶編號重排得到合法括號序的編號排列中,p是字典序最小的排列,q是字典序最大的排列 題解 很神仙的題,完全沒

原创 h5魔塔開坑記

沒想到吧我又回來了 下面是開了的坑(請不要在機房做與學習無關的事): 《百戰成神》:https://h5mota.com/tower/?name=war100 (預計100層?)

原创 PKUSC2021提前離場記

(指沒進面試 day0 下午飛機延誤,八九點才喫到飯 晚上爽快戰鬥 day1 上午試機,桌子賊tm高+巧克力鍵盤 試機T2寫了60 下午day1,隨機到了隔壁機房,普通鍵盤+正常桌子 然後點開沒有計算器 T1 40min切了,感覺良好(f

原创 一句話題解(2021.7&8)

咕咕咕

原创 一句話題解(2021.6)

咕咕咕

原创 Linux gedit配置

編輯-首選項-插件 裏打開外部工具 編譯: #!/bin/sh name=$GEDIT_CURRENT_DOCUMENT_NAME name2=${name%.*} g++ $name -o $name2 -g 運行: #!/bin/sh