| DarkWishmaster |
17.04.2011 22:14
Сообщение
#1
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 168 Пол: Мужской Репутация: 3 |
Надо методом перебора. Я сделал, только они повторяются:
1 3 5 - 5 3 1 Может у вас есть алгоритм для этой задачи? Я думал сохранить результаты в массиве, т.е если числа вектора не повторяются с теми что из массива то добавляем в массив, но это не эфективно, думаю есть более простой метод. Спасибо. |
![]() ![]() |
| DarkWishmaster |
18.04.2011 16:38
Сообщение
#2
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 168 Пол: Мужской Репутация: 3 |
Забыл сказать что все числа должны быть разными (т.е варианты типа 3 3 9 не печатать)
Вот моя идея: например для n=9, k=3 создаем вектор: 1 2 3 Теперь увеличиваем 3 пока сума вектора не будет N 1 2 4 1 2 5 1 2 6 -> решение теперь идем к переведущему числу, уже к 2 и увеличиваем его на 1 единицу: и опять последний увеличиваем: 1 3 4 1 3 5 -> решение увиличиваем 3 так как 1 4 5 больше N то идем к первому элементу и увеличиваем его 2 3 4 ->решение теперь уже ничего увеличивать нельзя, так как сума будет больше N Вот что я пробовал сделать : Program (Показать/Скрыть)
без рекурсии я знаю как сделать, а тут... Сообщение отредактировано: DarkWishmaster - 18.04.2011 16:39 |
DarkWishmaster Разбиение числа на слагаемые 17.04.2011 22:14
Lapp Надо методом перебора. Я сделал, только они повтор... 18.04.2011 5:42
volvo Алгоритм ты озвучил сам: перебор.
Есть реализаци... 18.04.2011 15:26
Lapp Алгоритм ты озвучил сам: перебор.
Есть реализаци... 19.04.2011 4:11
volvo Покажи то, что ты придумал без рекурсии... 18.04.2011 16:48
DarkWishmaster
Покажи то, что ты придумал без рекурсии...
щяс ... 18.04.2011 17:20
volvo Заодно попробуй вот это (набирал прямо здесь, так ... 18.04.2011 17:25
DarkWishmaster Спасибо, volvo, только что закончил, вот без рекур... 18.04.2011 17:46
volvo Я не игнорировал пост. Зашел, посмотрел. Кстати, н... 19.04.2011 10:46
Lapp Я не игнорировал пост. Зашел, посмотрел. Кстати, н... 19.04.2011 11:50
Lapp Тема разделена, остаток перенесен сюда: О недавних... 22.04.2011 4:50![]() ![]() |
|
Текстовая версия | 6.11.2025 7:41 |