1202 子串行個數 dp

2021-09-28 15:39:50 字數 785 閱讀 7085

子串行的定義:對於乙個序列a=a[1],a[2],......a[n]。則非空序列a'=a[p1],a[p2]......a[pm]為a的乙個子串行,其中1<=p1例如4,14,2,3和14,1,2,3都為4,13,14,1,2,3的子串行。對於給出序列a,有些子串行可能是相同的,這裡只算做1個,請輸出a的不同子串行的數量。由於答案比較大,輸出mod 10^9 + 7的結果即可。

收起

第1行:乙個數n,表示序列的長度(1 <= n <= 100000)

第2 - n + 1行:序列中的元素(1 <= a[i] <= 100000)

輸出a的不同子串行的數量mod 10^9 + 7。
412

32

13
一開始整的時候暴力超時了,然後才注意到有去重這個要求之後就是應該是差分的思想吧,不過這個題有個坑那就是去重那個點因為去重要做減法所以取模有個坑就是要先加1e9+7再取模這也是很常見的取模技巧因為忘記有減法了把這點給忘了直接上**吧

#include #include #include #include #include #include #include #include #include using namespace std;

const long long inf=1e9+7;

long long dp[100009];

int a[100009];

int sum[100009];

mapmp;

int main()

cout<}

}

1202 子串行個數 DP

1202 子串行個數 基準時間限制 1 秒 空間限制 131072 kb 分值 40 難度 4級演算法題 子串行的定義 對於乙個序列a a 1 a 2 a n 則非空序列a a p1 a p2 a pm 為a的乙個子串行,其中1 p1 例如4,14,2,3和14,1,2,3都為4,13,14,1,2...

1202 子串行個數

1202 子串行個數 子串行的定義 對於乙個序列a a 1 a 2 a n 則非空序列a a p1 a p2 a pm 為a的乙個子串行,其中1 p1例如4,14,2,3和14,1,2,3都為4,13,14,1,2,3的子串行。對於給出序列a,有些子串行可能是相同的,這裡只算做1個,請輸出a的不同子...

51nod 1202 子串行的個數 dp

1202 子串行個數 福州大學 oj 基準時間限制 1 秒 空間限制 131072 kb 分值 40 難度 4級演算法題 子串行的定義 對於乙個序列a a 1 a 2 a n 則非空序列a a p1 a p2 a pm 為a的乙個子串行,其中1 p1例如4,14,2,3和14,1,2,3都為4,13...