#include <iostream>
using namespace std;
#define MAXN 10
int colors[MAXN];//record the counter of one color
int colorsCounter;
void find(int arr[],int len, int colorsNeed)
{
int bestStartIndex = 0;
int bestLen = len;
int lastStartIndex = 0;
for ( int i=0; i<len; ++i) {
if (!colors[arr[i]])
colorsCounter++;
colors[arr[i]]++;
if (colorsCounter==colorsNeed) {
int j = lastStartIndex;
while (colors[arr[j]]>1) {
colors[arr[j]]--;
++j;
}
if (i-j+1<bestLen) {
bestStartIndex = j;
bestLen = i-j+1;
if (bestLen==colorsNeed)
break;
}
lastStartIndex = j;
}
}
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。