原创 洛谷 P2023 [AHOI2009]維護序列(bzoj P1798 [Ahoi2009]Seq 維護序列seq)

傳送門 前天看到這道題覺得線段樹水過,準備敲一敲分塊。然後就沒有然後了wa了十發。今天看到就順手水了水。。最近被拓展lucas和ahoi2017玩廢,我恐怕就是一隻鹹魚了。。 注意標記下傳要加法標記要先乘再加,然後就沒什麼了。 代碼: #

原创 codeforces 1256E Yet Another Division Into Teams

傳送門 題意: n個數字,分成若干隊伍(每個隊伍至少3個數字),每個隊伍都有最大最小值的差值,如何才能使所有隊伍的最大最小差值之和最小。 題解: 容易有結論:人數 6,一定沒有,人數6優 下證:不妨設            則任取  

原创 codeforces 549C Happy Line

傳送門 題意: 一行數字可以前後交換,交換後,之前在前面的數字+1,之前在後面的數字-1,問是否可以將這一行數字通過交換使得得到一行單調上升的數字 題解: 可以發現交換前後數字都只改變1 不妨將數字的下標考慮進來,先不考慮1,直接交換

原创 codeforces 346C Number Transformation II

傳送門 題意: 給兩個數字a,b,有兩個操作,第一個操作直接-1,第二個操作是,求a變成b的最少操作數 題解: 很明顯令表示由b+k到b的最少操作數,假設b,b+k可以一步操作到達, 由此得出單調上升,即可貪心每次減去最大值 注意:到會

原创 bzoj P1925 地精部落

傳送門 很妙的dp,狀態設出來了方程沒推出來(博主果然菜) 設f[i][j]表示前i個數第一個數爲[1,j]且第一個數降序的方案數,然後有f[i][j]=f[i][j-1]+f[i-1][i-j] 解釋一下,我們顯然知道f[i][j-1]

原创 洛谷 P3817 小A的糖果

傳送門 嗯,模擬加貪心. 考慮第i盒糖的吃糖優先級,肯定有第i盒糖大於第i-1盒糖,因爲第i盒糖剩的越少第i+1盒糖吃的越少而第i-1盒糖已經吃了不用再考慮,所以先吃第i盒糖吃完再吃第i-1盒糖。 代碼: #include<iostrea

原创 codeforces 882C Hacker, pack your bags!

傳送門 愚蠢的博主又上線啦! 這題博主一看排序+樹狀數組o(n*logn),先分類把天數相同的證件拿一個vector存(拿數組就炸了,vector的話空間就是o(n)了),然後按l第一關鍵字,r第二關鍵字,價值第三關鍵字排序,然後枚舉n個

原创 bzoj P1031 [JSOI2007]字符加密Cipher

傳送門 我果然是菜啊,調個裸sa竟然調了一個晚上。。 這題就是普通處理環,把原串複製一遍,做一遍sa就行了。 代碼: #include<iostream> #include<stdio.h> #include<string.h> usin

原创 洛谷 P3819 松江1843路

一個小小的技巧:輸出long long最大值 printf("%lld",(long long)1e19); 因爲long long最大不是9*10^18所以輸1e19就行啦 然後本題就是個三分,很容易看出這個函數是凸函數。注意本題要用l

原创 codeforces 822D My pretty girl Noora

傳送門 很煩,不會做的尷尬,好神的數學題。 很顯然就是求f(x)剩下的暴力,博主表示打表找規律一點沒用上(主要是博主菜),首先證明一個東東就是每一輪分女孩的組數一定是素數(這個鬼知道啊!!),考慮合數di = a·b,顯然有,然後基本不等

原创 洛谷 P1169 [ZJOI2007]棋盤製作(bzoj P1057 [ZJOI2007]棋盤製作)

傳送門 學習一發懸線法,但是好像出了點意外的事,在洛谷上A了卻在BZOJ上炸瞭然後和標解拍了沒問題。。有毒!!(好吧發現了一個弱智錯誤有一個m打成了n 懸線法: 設line[i][j]表示[i][j]位置向上的最大懸線(就是到障礙點的最大

原创 洛谷 P3478 [POI2008]STA-Station(bzoj P1131 [POI2008]STA-Station)

傳送門 這題必須要吐槽!!! 首先樹形dp先求以1爲根的深度和,然後由父親節點轉移到兒子節點,也就是除了兒子節點以下包括兒子節點的其他節點深度減1,兒子節點以下包括兒子節點的其他節點深度加一(畫個圖很容易看出,實在不行看popoqqq的博

原创 洛谷 P3818 小A和uim之大逃離 II

傳送門 典型的搜索 要注意的是:這題是搜一條雖短路徑,所以用bfs(遠遠快於dfs);這題還要用到dp,設f[i][j][k]表示到位置[i,j],k表示是否用了能力所用的最少步數。 dfs的代碼(60分): #include<iostr

原创 hihoCoder 1142 三分·三分求極值

傳送門 嗯,裸的三分,注意scanf讀double型只能用%ld,還有printf自帶四捨五入 代碼:#include<iostream> #include<stdio.h> #include<math.h> using namespac

原创 洛谷 P2324 [SCOI2005]騎士精神

傳送門 開始懟網絡流24題所以發的比較晚,學習一下A*搜索,A*其實就是加入評估函數對有限步數或能估價有效的剪枝,對於A*一般只有dfs(bfs被成爲最愚蠢的A*)。 這題的估價函數:當前棋盤與目標棋盤不同的位置數量-1(評估函數是當前狀