柱爺愛思考,凡事喜歡舉一反三,常常能想到別人沒想過的問題。
比如最大區間和這個問題:在一數列上選出一段區間,使得這段區間和最大。
柱爺想:如果選出兩段區間(不相鄰)會怎樣呢?
柱爺很快想到了答案,你呢?
input
第一行輸入乙個數n,表示陣列的長度。
第二行輸入n個數,表示各元素的值。
資料保證:
3≤n≤500000
−100
#include
#define max(a, b) a > b ? a : b
#define maxsize 500005
#define inf 0x3f3f3f3f
int main(int argc, const
char * argv)
; while (~scanf("%d", &n))
b[n + 1] = -inf;
for (i = n; i > 2; i--)
for (i = 1; i < n - 1; i++)
}printf("%d\n", ans);
}return
0;}
cdoj 1485 柱爺搞子串 sam treap
柱爺有乙個字串s,對於其中的每乙個不同子串 s ast 柱爺都能o 1 的得到這些字串的所有匹配位置 即能知道所有的 l,r 區間使得 s l,r s ast 然後柱爺會把這些 l,r 區間的每個位置做上標記,如果最後這些標記位置形成了k個連通塊,那麼它對答案的貢獻就是1 柱爺早就知道了答案,但他現...
CDOJ1357 柱爺與最大區間和
傳送門 分析 首先,我們需要知道怎麼求一段最大區間和。從左往右掃的時候,用pre記錄當前的最大值,f i 表示從最左端到i這個區間上的最大和。當掃到i時,如果pre已經小於0,那麼直接將a i 賦值給pre,否則加上a i 然後f i max f i 1 pre 時間複雜度為o n 求兩段的話,再倒...
2016藍橋杯B組 NO 6
方格填數 如下的10個格仔 填入0 9的數字。要求 連續的兩個數字不能相鄰。左右 上下 對角都算相鄰 一共有多少種可能的填數方案?請填寫表示方案數目的整數。注意 你提交的應該是乙個整數,不要填寫任何多餘的內容或說明性文字。include include include include using n...