我有10個項目子序列號
int list[] = {2,3,8,9,10,11,12,2,6,8};
int start_pos = 0;
int lenght=0; // lenght of the sub-~consetuve
for (int a =0; a <=9; a++)
{
if ((list[a]+1) == (list[a+1])) {
// continue just the string;
lenght++;
} else {
start_pos = a;
}
}
cout << lenght << " and start in " << start_pos;
getchar();
,但它不工作得到最長連續越來越多的陣列,它應該在長度返回& START_POS(3 lenght 4)因爲最長的增長是從9,10,11,12,但它不起作用。
告訴我們一些代碼Bill :) –
我認爲你的一個問題可能會溢出。在C++中整數的最大大小是一樣的,一旦超過,就會回到 - (最大值)。 – Whovian
這不是最長的*子序列*,它是最長的*連續運行*。 – dasblinkenlight