洛谷P3205 合唱隊

2022-03-17 15:55:51 字數 494 閱讀 2508

題目

區間dp。但是跟平常的區間dp不同的是,這個題僅僅只是運用了區間dp的通過小區間的資訊更新大區間的資訊,而沒有運用列舉斷點的區間dp一般思路。

這個題我們首先發現每個人在插入的時候一定插入到隊伍的最前方或最後方,所以當要插入該數的時候,要比較的數是隊伍的最前方或最後方,然後用加法原理。與其說是dp,不如說是遞推。

#include #define n 1000110

#define int long long

const int mod = 19650827;

using namespace std;

int n, a[n];

int dp[1001][1001][2];// 0表示從左邊

signed main()

printf("%lld", (dp[1][n][0] + dp[1][n][1]) % mod);

return 0;

}

P3205 HNOI2010 合唱隊 題解

同步 原題鏈結 簡要題意 有長度為 n nn 的序列 a aa 和乙個空序列 b bb.下面進行操作 每個 a aa 唯一對應乙個 b bb,但是每個 b bb 並不唯一對應乙個 a aa.現在已知 b bb 序列,試求滿足條件的 a aa 序列的個數。答案對 19260817 19260817 1...

洛谷 1091 合唱隊行

n位同學站成一排,老師要請其中的 n k 位同學出列,使得剩下的k位同學排成合唱隊形。合唱隊形是指這樣的一種隊形 設k位同學從左到右依次編號為1,2,k,他們的身高分別為t 1,t 2,t k,則他們的身高滿足t 1t 1 t1 i t iti ti 1t ti 1 tk 1 i k t k 1 l...

洛谷 P1091 合唱隊形

n位同學站成一排,老師要請其中的 n k 位同學出列,使得剩下的k位同學排成合唱隊形。合唱隊形是指這樣的一種隊形 設k位同學從左到右依次編號為1,2 k,他們的身高分別為t1,t2,tk,則他們的身高滿足t1 ti 1 tk 1 i k 你的任務是,已知所有n位同學的身高,計算最少需要幾位同學出列,...