NOIP模擬 成績單(DP)

2022-08-21 02:24:12 字數 741 閱讀 9711

隨便亂yy了乙個dp竟然氵了20pts。。。23333

結果正解也看了我好久。。。不愧是t3。。。。。

顯然這個題最麻煩的地方在於取出中間的一段後如何決策前後兩段的取法,顯然暴力列舉。。。。bczd

所以我們用dp[i][j]表示將i~j這一段全部取出需要的最小代價,cost[i][j][k][l]表示取i~j這一段最大值為k,最小值為l的最後一次操作的代價。

顯然如果i=j,那麼代價為0,考慮轉移方程。

考慮g[l][r][i][j],如果加上f[r+1][k-1]就可以得到g[l][k][min(i,w[k]][max(j,w[k])]了,對於f[i][j],如果與cost[i][j][當前列舉最小值][當前列舉最大值]+dp[r+1][j]+a+b*(w[當前最大值]-w[當前最小值])^2,那麼就可以得到dp[i][t]的值。

最後輸出dp[1][n]就是答案。

#includeusing namespace std;

const int maxn=60;

const int inf=0x3f3f3f3f;

int n;

int a,b;

int w[maxn],ls[maxn];

int dp[maxn][maxn],cost[maxn][maxn][maxn][maxn];

int read()

int main()

}cout

}

NOIP模擬 成績調研

這題明明是道水題,但是卻不小心打錯了。做法大致是每次搜到乙個i,對於每個等級k,都找乙個 x,y 滿足 x y,i 是合法的,然後用線段樹求一下區間的交集就好了。每次多找到乙個a i 是,左右區間本來都要向右移動的 如果已經有的話 但是我的右區間移動了,左區間卻沒有移動,而且我並沒有考慮l 0的情況...

成績單型別

cjd 雙單引號是注釋 成績單學號 d20c055 s s是字串輸出 你的成績如下 高等數學 f分 f是浮點數輸出,f前加數字幾就保留幾位 python程式設計基礎 f分 形勢與政策 f分 大學英語 f分 xuehao input 請輸入數字 sc float input 請輸入高等數學分數 py ...

成績單問題

今天羅浮宮群的乙個同學問了個成績單的問題。以前我也遇到過,當時記得費了好大勁。現在正好回味一番。資料庫結構如下。資料插入語句如下。create table if not exists chengji goods id int 5 not null,user id int 5 not null,poi...