1. 程式人生 > >2018年7月30日暑假訓練日記

2018年7月30日暑假訓練日記

上午:Splay

HDU 3436 Queue-jumpers (Splay tree)

Splay的三大操作,查詢某個點的位置,查詢第k個位置,和旋轉點到隊首。

這裡離散化比較六,把沒有用到的區間壓縮成了一個點

HDU 3487 Play with Chain (Splay tree)

這就是上次沒做出來的題目的升級版,加了一個反轉操作,果然是個splay的模板題,由於操作l,r,所以新增兩個根,操作的時候,從a-1變成a,從b+1變成b+2,先把對應的a-b這段區間切下來,把要接到的點旋轉到根部,然後把切下來的區間接成根的右子節點的左子節點即可

下午:

先是一個結論題,不知道為什麼就直接用了,a了之後想起來是個結論,就是euler[i]=(1-1/pi)的連乘

而後做出來個模擬的題目,就是輸出個正方體,然後一個xor的結論題,之後單調佇列的題目卡住了,愣是用了優先佇列一直tle,很是難受。