NOIP2006 提高組 能量項鍊

2021-08-20 07:25:34 字數 560 閱讀 1518

話不多說,上題:

該題正解區間dp,什麼是區間dp呢,可以用這道題來來說明:用dp[i][j]表示從i到j的最大值

和其他題有點不同的是:這道題需要求乙個環的最大值,其他的就是很普通的區間dp了。

#include

using

namespace

std;

int a[205],n;

int f[1005][1005];

int ans=-1;

int main()

a[0]=a[n];

for(int i=1;i2;i++)}}

for(int i=1;i<=n;i++)

cout

0;}

最後講乙個黑科技:有時候題一直錯的時候可以給迴圈的開始,退出條件多試試幾個值可能沒準哪一步就對了。。。

NOIP2006 提高組 能量項鍊

首先,我們肯定要把每個珠子都聚合是能量最大的基礎,而對於這個環,我們可以在輸入時預處理成這個樣子 1 2 3 4 1 2 3 然後發現這個環的所有遍歷情況變得很簡單 以某個為起點,向後取n個就行 現在,我們只要發現這是個區間dp就行了 f i j 表示,從 i 到 j 這個區間內聚合的最大值 對於每...

NOIP2006(能量項鍊)

program energy var n,m longint head,tail array 1.200 of longint head i 與tail i 分別表示第i個珠子的頭標記與第i個珠子的尾標記。f array 1.200,1.200 of longint f i,j 表示從第i個珠子到第...

NOIP 2006 能量項鍊

洛谷傳送門 jdoj傳送門1 jdoj傳送門2 在mars星球上,每個mars人都隨身佩帶著一串能量項鍊。在項鍊上有n顆能量珠。能量珠是一顆有頭標記與尾標記的珠子,這些標記對應著某個正整數。並且,對於相鄰的兩顆珠子,前一顆珠子的尾標記一定等於後一顆珠子的頭標記。因為只有這樣,通過吸盤 吸盤是mars...