Wannafly23 A(尺取法模板)

2021-08-26 17:40:27 字數 453 閱讀 4615

給乙個字串,問包含26個小寫字母的子串中,最短的長度是多少

尺取法的模板題,子串是連續的,而且題目保證了一定存在這樣的子串。那麼取兩個指標,後乙個指標往後掃。一旦有滿足題意的子串,就讓前面的指標也往後掃,直到後面的指標掃不夠了,在這個過程中,兩個指標表示的就是當前的子串。指標每次變動乙個我們就check一下是否包含26個字母,然後取最小的即可。

#include 

#include

#include

#include

using

namespace

std;

int al[26];

bool check()

int main()

else

}cout

<< len << endl;

}return

0;}

學習記錄 尺取

尺取法通常試用於選取區間有一定規律,或所選取的區間有一定的變化趨勢的情況。poj3061 題意 給定乙個序列,找出最短的子串行長度,使得其和大於或等於s 輸入 包含兩個數,乙個為序列長度n,乙個為s 樣例輸入 10 15 5 1 3 5 10 7 4 9 2 8 樣例輸出 2思路 當乙個區間的和大於...

尺取 C語言

相比於普通的直接暴力列舉,尺取效率就高的多了。用乙個題目來比較一下 如果用通常的方法來解決這個問題就是這樣的 includelong long int a 2000010 int main if flag ans ans就是所要求的最大值,每次拿加好後的flag和ans比較,得到最大的那個 ans ...

Bound Found(尺取 字首和)

題目大意 就是給n個有正有負的整數,然後給k個t,在n數列中找到連續的乙個序列使得這個序列的和的絕對值最接近t,然後輸出這個序列的和的絕對值和它的區間左右端點。思路 這是個尺取的問題,首先這是我第一道尺取題,不知道為什麼第一道就不容易找單調出序列,不知道掛題的學長怎麼想的,雖然當時講了一小下這種問題...