由於太累,頹寫幾題就睡了。回來後補做所有題。
A: 問的是二進制字串的

。秒殺。
B: 問的是給了

,先求去掉符號、無視大小寫的任意

種排列後再接上的字串。然後給出

個詢問,同樣是去掉符號和大小寫,是否其中6個排列之一。map秒殺。
C: 給了

後有兩種操作。如果b是整數的話則輸出
})_{(b)})
(即一般進制轉換),否則把
})_{10})
輸出成羅馬數字。原本描述寫得比較混亂。但進制轉換是比較輕鬆的,至於轉羅馬數字,我是立即Google找
代碼的。後來得知被Egor叉了,想了一會立馬知道自己腦殘了–進制轉換沒處理0的情況,輸了出空字串。今天改了後過了。
D: 給了一個帶權樹,以點1為起點,要遍歷所有點至少一次的最少費用是多少。想了一些很腦殘的算法但沒過,但至少在睡前刷牙的時候正常了點。設以1為起點的最大路徑費用是

,則答案是
 - p)
。
E: 問的是給了一個數列A,問有多少個

,並保証

。直觀的想法是先用歸並排序求每個元素的逆序數,然後再以原輸入再以歸並排序時求帶權的逆序數。即兩次歸並排序可以解決。
沒有留言:
張貼留言