題目連線:
#include #include #include #include using namespace std;
struct board
;struct line
;struct node
;board a[2000000];
node tr[1000000];
line l[4000000];
int dp[2000000];
bool cmp(board a,board b)
void update(int c,int s,int e,int f)
if (tr[c].f != -1)
update(c<<1,s,e,f);
update(c<<1|1,s,e,f);
}int query(int c,int v)
int main()
lt=0;
sort(a+1,a+n+1,cmp);
build_tree(1,1,ma);
for (i=1; i<=n; i++)
memset(dp,0,sizeof(dp));
dp[n]=100+a[n].v;
for (i=n; i>=1; i--)
}if (dp[0] <= 0)
printf("-1\n");
else
printf("%d\n",dp[0]);
}}
HDU 4521 小明序列 線段樹 DP
題目鏈結 include include include include include include include include includeusing namespace std const int maxn 100005 const int inf 1 30 0x7f int n,d ...
HDU 3607 線段樹 離散化 DP
n個連續的盒子,每個盒子有高度h和價值v,選擇任意一點進入,且從任意一點出來,進入後只能從左向右走,且每次走到的盒子高度必須更高,可以跳過低的盒子 狀態轉移方程 dp i max dp j v i 0 jh j 用線段樹優化,尋找 j include stdio.h include string.h...
hdu 1556 簡單線段樹
漢語題,不解釋 思路 此題是線段樹的染色,先分段染色,可以nlogn級別,在算出每個位置的染色數 求染色數的時候,有兩種方法 1,用乙個數記錄step的值,之後除以2,把每個值相加,直到為一時結束 為從下向上尋找 2,用遞迴,從上往下尋找 下面是我的2 include include include...