17 03 05校內訓練 萬聖節服飾

2021-07-27 21:54:24 字數 810 閱讀 3653

輸入第一行乙個t(≤200),表示測試組數:

每組第一行乙個n(1≤n≤100),表示化裝舞會場數;

第二行n個整數ci(1≤ci≤100)表示化裝舞會型別,按參加的先後順序。

每組資料:先輸出「case x: 」,其中x表示測試組號,後面是所需最少的服飾數。

2 4

1 2 1 2

7 1 2 1 1 3 2 1

case 1: 3

case 2: 4

區間dp。

設f[i][j]為第i個舞會到第j個舞會需要多少件衣服。

首先f[i][i] = 1。

如果a[i] = a[j],那麼f[i][j] = f[i][j-1]。

然後列舉k,f[i][j] = min(f[i][k], f[k+1][j]),(i <= k < j)。

#include

#include

#include

using

namespace

std;

const

int n = 100 + 10, inf = 0x3f3f3f3f;

int t, n;

int a[n], f[n][n], tot;

void work()

f[n][n] = 1;

for(int l = 2; l < n; l++)

}printf("case %d: %d\n", ++tot, f[1][n]);

}int main()

return

0;}

萬聖節派對

時間限制 1000 ms 記憶體限制 65535kb 難度 1 描述 萬聖節有乙個party,xadillax顯然也要去湊熱鬧了。因為去湊熱鬧的人數非常龐大,幾十w的數量級吧,自然要進場就需要有門票了。很幸運的,xadillax竟然拿到了一張真 門票!這真 門票的排列規則有些奇怪 門票號是由0 6組...

萬聖節派對

門票號是由0 6組成的六位數 0 6這幾個數字可重用 過濾每乙個門票號 第乙個過濾條件 每一位不能有三個連續相同的數字 如123335是不行的 第二個過濾條件 每乙個門票號相鄰的兩位相差必須在四以下 4 如016245是不行的 輸入第一行乙個n,代表輸入個數 接下去n行,每行兩個數字x,y x y ...

萬聖節派對

描述 萬聖節有乙個party,xadillax顯然也要去湊熱鬧了。因為去湊熱鬧的人數非常龐大,幾十w的數量級吧,自然要進場就需要有門票了。很幸運的,xadillax竟然拿到了一張真 門票!這真 門票的排列規則有些奇怪 門票號是由0 6組成的六位數 0 6這幾個數字可重用 每乙個門票號的每一位不能有三...