最長連續不重複子序列的問題

2021-10-12 10:43:46 字數 627 閱讀 3308

1.求最長連續不重複子序列的長度。

2.求最大連續不重複子序列的和。

用乙個陣列b[]

bb[

]儲存每個數出現的次數,如果資料範圍較大或者存在負數,則可以用uno

rder

ed_m

ap

unordered\_map

unorde

red_

map儲存。

1.求長度。

int ans=0;

for(

int i=

1,j=

1,l=

0;i<=n;i++

) ans=

max(ans,l)

;}

2.求最大和,此方法只能應用於a[i

]≥

0a[i]\ge 0

a[i]≥0

int ans=0;

for(

int i=

1,j=

1,s=

0;i<=n;i++

) ans=

max(ans,s)

;}

傳送門

待解決:有正,負的陣列的最大和,最小和問題。

最長連續不重複子序列

給定乙個長度為n的整數序列,請找出最長的不包含重複數字的連續區間,輸出它的長度。第一行包含整數n。第二行包含n個整數 均在0 100000範圍內 表示整數序列。共一行,包含乙個整數,表示最長的不包含重複數字的連續子串行的長度。1 n 100000 51 2 2 3 5 暴力 for int i 0 ...

最長連續不重複子序列

核心思路 遍歷陣列a中的每乙個元素a i 對於每乙個i,找到j使得雙指標 j,i 維護的是以a i 結尾的最長連續不重複子序列,長度為i j 1,將這一長度與result的較大者更新給result。對於每乙個i,如何確定j的位置 由於 j,i 1 是前一步得到的最長連續不重複子序列,所以如果 j,i...

最長不重複子序列

其實是一道典型的雙指標問題,只要一直往後去輸入資料,如果遇到重複的資料,就讓begin指標往後移,直到重複的元素不再子串行內,在讀入新資料就可以了,每次遇到重複資料就把maxlength和當前的length比較去大值,就可以了 include include include include incl...