Как мне сбросить значение blockIndex
в исходное состояние, когда я вызываю метод?
Скажем, если я позвоню и передам значение 4. Я проверяю, больше ли это значение, чем 9, если нет, я добавляю элемент в pos(0)
, Но, отслеживая мою функцию, я вижу, что она добавляет все значения вектора. Я просто хочу, чтобы он добавил 1 элемент, а затем, когда он проверит, больше ли он, чем 9, вернет его к исходному значению. Как мне это сделать?
int NumCriticalVotes :: CountCriticalVotes(Vector<int> & blocks, int blockIndex)
{
if (blockIndex >= 9 && blocks.isEmpty())
{
return 1;
}
if (blocks.isEmpty()) //Fail case
{
return 0;
} else {
int element = blocks.get(0);
Vector<int> rest = blocks;
rest.remove(0);
return CountCriticalVotes(rest, blockIndex) || CountCriticalVotes(rest, blockIndex + element);
}
}
Задача ещё не решена.
Других решений пока нет …