題目:
題意:給你乙個環形的數列,問你連續長度為k的數的和的最大值,並且輸出區間座標,使座標字典序最小
分析:把環形轉換成直線處理即可,求出累加和陣列,用優先佇列維護
#include#include#include#includeusing namespace std;
const int maxn=200004;
int a[maxn],sum[maxn],n,t,k,q[maxn];
int main()
}printf("%d %d %d\n",ans,st%n+1,((ed-1)%n)+1);
}return 0;
}
hdu 4374 dp 單調佇列優化
解法 dp 單調佇列!有乙個的樓房,從第一層某個位置出發上樓,每次能爬上一層樓也可以在同一層左右移動,但是在每一層的移動距離不能超過某個值。現在每個位置都有乙個數值,求從第一層出發到最後一層經過的路徑上最多能取到的最大價值。dp i j 表示 第i行,第j個數字的最大價值!sum i j 表示 第i...
hdu 3530 dp 單調佇列優化
題目 題意 給你乙個長度為n的數列,要求乙個子區間,使得區間的最大值與最小值的差s滿足,m s k,求滿足條件的最長子區間 分析 做了前面幾題後,這題容易想到用兩個單調佇列維護當前最值,作為判斷條件,如果差值大於k了,就去掉較前面的那個佇列元素,並把區間頭更新為它的標號 1,這裡注意差值小於m並不需...
hdu 4362 單調佇列優化dp
題意 有m個階段,每個階段都有n個龍珠,當在某一階段選擇乙個龍珠,該階段其他龍珠都會消失。給出兩個m n的矩陣,第乙個矩陣表示消滅第i個階段第j個龍珠的位置,第二個矩陣表示取第i個階段第j個龍珠消耗的能量,同時當第x個位置到第個位置需要消耗 y x 的能量。問最後每個階段取走乙個龍珠最小的能量消耗。...