POI題解整合

2022-05-13 09:31:02 字數 1200 閱讀 7161

我也不知道為啥我就想把poi的題全都放到一篇blog裡寫完。

貪心,每次選下次出現最晚的。

箱子位置單調,所以記錄現在的箱子位置和字首最小值,向上列舉就行。

戳這戳這

樹剖 or dfs序上維護字首和。

按照洛谷的題面,可以發現灰點就是用來搞笑的,然後在生成樹上染個色就行了。

列舉長度,hash判重就行,注意先預處理出整串的hash值,然後\(o(1)\)求每一段的hash值。複雜度\(o(n\log^2 n)\)

把給定的串每個字元取反放在這個字元後面,然後長度和半徑為偶數的回文串就是答案了。魔改一下manacher就能做了。

把每個數都減去\(k\),然後再求字首和,答案就是最大的\(r-l\)滿足\(s_r\ge s_l\)。求這個東西可以先把字首和塞到乙個單調棧裡,然後從後往前計算答案,注意到如果\(r_1\)的答案在\(l_1\)處,那麼對於\(r_2的\(r_2\),其對應的\(l_2\)也必須小於\(l_1\)才有可能成為答案,這個東西是有單調性的,所以\(o(n)\)地來 回掃2遍就行了。

列舉右端點,單調佇列維護當前最大最小值。因為如果在乙個位置不合法了,之後的位置一定也不合法,所以就要出隊靠前的元素。

一開始想\(\min-\max\)搜尋,結果一看資料範圍就gg了。然後這個題實際上就是乙個sb題,容易發現取肯定取相鄰的一端。排個序之後\(f_i\)表示在前\(i\)小的裡面取的答案,然後轉移就是第\(i\)個數是和之前的一起拿\((f_)\),還是自已成為一手\((a_i-f_)\)。

乙個神仙的結論:如果有能排成三角形的三根木棍,那麼一定有三根長度相鄰的木棍能排成三角形。所以排個序,維護三個相鄰的不同色的木棍看是否合法就行了。

一開始沒看到是子串,想了好久才發現……

子串就很好做了,要滿足每個\(r\)都大於之前的所有\(l\),維護乙個單調佇列就行了。

題解戳這

線段樹合併。

差分約束,然後乙個scc裡的最長路就是這個scc裡能選的範圍,然後每個scc又互不影響,答案加起來就行。

逆序對數。這裡有一種比較短的求a的逆b序對數的方法:

for (int i = 1; i <= n; ++i) 

for (int i = n; i; --i)

又是一道單調佇列優化dp題……

戳這還是一道單調佇列題……

這道有點不一樣的地方是單調佇列維護的不是點的最大值而是區間的最大值(實際上一模一樣……)

springboot專案整合POI匯出Excel表

poi是excel2003,poi ooxml是2007 以上的。專案pom中匯入依賴 org.apache.poi poi ooxml 3.9編寫匯出excel的工具類。這是依據我的專案編寫的工具類,文章尾部會貼出公共方法的工具類 匯出excel表 前端頁面中的js button data met...

Codeforces題解整合 按照場次

本貼只給出傳送門,用於整合。本帖只會給出整場全部題的題解。沒有做出來全部題的場次的題解不進行記錄。也算用於給自己一種補題的督促動力吧。codeforces round 383 div.2 a.b.c.d.e codeforces round 384 div.2 a.b.c.d.e codeforce...

springmvc4整合POI匯出Excel的坑

專案中使用springmvc4.1.3 poi實現檔案上傳 controller層 上面 省略service與處理excel的row與cell的過程 springmvc.xml的配置 文字轉換器部分 錯誤的 text plain charset utf 8 所以在springmvc的文字轉換器中加入...