Usaco 再次除草

2022-08-13 08:54:20 字數 1053 閱讀 2216

以後都用自己的號交吧 免得掉人品 noip2016就是乙個見證 一步乙個腳印的刷

noip沒把前兩題穩拿就刷牛頭..

bzoj1230 線段樹打翻轉標記,練手感

bzoj1231 狀態壓縮 預處理一下 時間$o(2^n*n*n)$記得開longlong

bzoj1232 題目看死人 把原圖割成生成樹 每個點經過的時候都要加上權值 而且還會返回 那麼發現一條邊的花費就是$cost=val[u]+val[v]+edge[k].d*2$ 然後跑最小生成樹 最後還要選乙個最小的當起點度數+1

bzoj1233 這道是之前做的 單調佇列 考慮前面到後面的話不能反悔 堆到一般發現有錯誤 那麼就考慮從後面往前堆,合法的情況僅當$f[i]=f[j]+(g[j]<=sum[j-1]-sum[i-1])$ f是當前的層數 g是有多寬 最瘦的一定是最高的

bzoj1576 這道題拖了好長時間 高中停課乙個月挺難受的 由於直接跑最短路鬆弛一下可能會經過這一條邊再繞回回來 所以我們考慮 每個點都有乙個固定前驅 建立最短路樹 然後可以更新的邊一定不是樹上的邊 然後一定是反主邊和橫叉邊 做一遍樹剖 答案為$d[x]+d[y]-d[p]+d$ 那麼就把$d[x]+d[y]+d$拿去修改就好了 注意lca是不能修改的

bzoj1574 很容易猜到每個report的點找最近的點肯定最優 然後找最近的點的意思是刪掉這個點後最近的點還能去到1 理由我也不知道為什麼 反正我畫圖就猜出來了 當然不可以乙個個去找 那麼就反過來想 讓1去找即可

bzoj1575 簡單dp,預處理一下然後f[i][k]表示前面i和i必選總共選了k個 最後統計答案加上後面一段即可

bzoj1583 考慮堆會超時 所以線性合併用兩個指標

bzoj1590 簡單的字典樹 資訊比密碼長的 在搜密碼下去的時候 搜到最下面記錄子樹 短的時候搜下去直接記錄掉好了

bzoj1622 兩個指標匹配就好

bzoj1613 dp f[i][j]第i個時刻j體力

bzoj3540 首先相等的時候只可能個數為偶數 連續的一段就從小到大 然後用樹狀陣列找最前面可以繼承的就好 分奇數和偶數的情況

bzoj1607 不是nlogn嗎 為什麼網上的人都說是n..

2011除草 rbuttondown呼叫

好久沒有來msdn了,不知不覺這裡長滿了雜草,今天就來除除草吧。今天寫程式的時候需要實現快捷鍵的功能,就是全鍵盤操作。在彈出右鍵的時候遇到一些麻煩 在keydown事件裡直接用this.triggerevent rbuttondown 總是報錯,提示沒有找到dwo物件。這裡說明一下,一般視窗直接這樣...

自創 Blog除「草」記

由於種種原因,我的blog已經有 相當長時間沒有維護了。今天偶然回來,發現我的blog主頁上 居然都長綠色的 雜草 了。有人會問 主頁上怎麼會長 草 呢?它確實是草,但不是真正的草,卻像雜草一樣 這個 草 究竟是什麼呢?就是 gougou 雖然不是亂長,但也是不請自來,有點強加的味道。而且在 csd...

除草 Hackerrank思考題

matrix tree 矩陣aij,表示i和j的lca的點權值,詢問矩陣的行列式 考慮首先將列按dfs序,依次開始高斯消元,假設是1 2 3,第一行第一列必定全都是w 1 因此可以直接消元,消完之後考慮2,此時所有跟2的lca為1的點必定不再2的子樹中,假設是i號點,則a2i ai2 w 1 w 1...