Я пытаюсь понять, почему первый не работает, а второй работает, все, что я делаю, это передаю coinTrack, назовите это лишним, но почему это не работает?
Это работает без мемоизации, но при использовании мемоизации не получается, значит что-то там не так
Ввод не работает
coins = {1, 2, 5} target = 11
решение возвращает 7 => неправильно
решатель возвращает 3 => правильно
Локальный вывод
Ans=7
Ans=3
#include
#include
#include
#include
using namespace std;
map dp;
// Returns incorrect solution - 7
int solve(vector coins, int index, int result, int coinTrack) {
if(result==0) {
return coinTrack;
}
if(result
Подробнее здесь: https://stackoverflow.com/questions/786 ... gone-wrong
Рекурсивная смена монет, запоминание пошло не так ⇐ C++
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение