我有以下代碼。我創建了一個列表(與數組一起嘗試)與一百萬和一個成員。所有這些都默認值爲0。它應該像一個多維數組一樣工作,但它不是必需的,因爲第一個'列'必須是1-1.000.000的數字。爲了讓生活更輕鬆,我讓1.000.001成員避免使用第0位。 在某個時候,我必須使用這個列表中的一個成員,這個成員由一個變量:list [n]來處理,並且爲了避免這個問題,只有當n < 1.000.000時纔會發生。由於有成員從0-1.000.000我認爲這是好的,但仍然我的程序崩潰後一段時間的錯誤代碼ArgumentOutOfRangeException。 我在這裏錯過了什麼?列表/數組成員無法解決 - 歐拉14
int highestCount = 0;
int highestNum = 0;
List<int> list = new List<int>();
for(int j = 0; j <= 1000001; j++)
{
list.Add(0);
}
for (int i = 2; i < 1000000; i++)
{
int count = 0;
int number = i;
do
{
if (i % 2 == 0)
{
number = number/2;
if (number < 1000000)
{
if (list[number] != 0)
{
count += list[number];
break;
}
else
{
count++;
}
}
else { count++; };
}
else
{
number = (number * 3) + 1;
if (number < 1000000)
{
if (list[number] != 0) //program dies here
{
count += list[number];
break;
}
else
{
count++;
}
}
else { count++; };
}
} while (number > 1);
list[i] = count;
if (count > highestCount)
{
highestCount = count;
highestNum = i;
}
}
MessageBox.Show(highestNum.ToString());
使用調試器查找索引。 – SLaks
100663842,不應該檢查 – fishmong3r
_爲了讓生活更輕鬆_你應該快速習慣'0..n-1'模式。 –