Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.83/18: Рейтинг темы: голосов - 18, средняя оценка - 4.83
 Аватар для Nik Golor
3 / 3 / 0
Регистрация: 07.01.2017
Сообщений: 101

Рекурсия. Рекурсия с мемоизацией

08.06.2019, 09:53. Показов 3870. Ответов 25
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день. Задача такова: У нас есть массив для длины строки (пусть будет M=20). У нас есть некие длины слов (колличество не важно пусть будет 50 слов, задаим длины, как значение "j", ну а сами слова пусть будут "i"). Смысл в том, что заполнить словами строки + с учетом пробела + еще штрафы (штрафы - место оставшееся в строке куда не влезло слово и перенесли на след. строку). С этим всё более менее понятно. Но вот тут, момент который мне не понятен следкует. Дойдя до последней строчки, мы получим последний страф, как мне сказали, его для рекурсии, нужно возвести в куб (^3) и пустить на подсчет выше по строкам, мол далее он сам всё сделает, все подсчеты "нужно довериться". Я НЕ ПОНИМАЮ! Как это и зачем, и как это сделать! Говорили, что нужно два цикла, один (внешний) на подсчет всех слов зачем-то, а второй (внутренний) , как я понял должен выполнять (что-то) и условие на пока не >0. Это рекурсия. И я не привык к такому ужасу, не могу понять. Помогите пожалста, а то уже голову сломал. Главное с рекурсией разобраться, а мемоизация, как я понял - это тоже самое, только с сохранением значений пройденный путей.

Добавлено через 8 минут
Ну и да, в куб мы возводим штраф для большей ясности, как я понял.
Вся суть в том, что не понятна работа и смысл рекурсии, как бы не разбирался. Но всё крутится вокруг 2 циклов и доверия к выполнению на других строках.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.06.2019, 09:53
Ответы с готовыми решениями:

Рекурсия с мемоизацией...треугольник
Пути в числовом треугольнике начинаются от верхнего числа. От любого числа можно перейти к одному из двух соседних чисел в следующей...

Рекурсия
Не совсем разобрался с заданиями помогите!

Рекурсия
Мне нужно что бы в рекурсии делал от большого на маленький. Вот сам код: #include <iostream> #include <math.h> using...

25
103 / 82 / 78
Регистрация: 11.05.2015
Сообщений: 201
08.06.2019, 11:34
Не очень понятно задание. Правильно я понимаю, что имеется множество строк длины M и необходимо заполнить их словами так, чтобы было как можно меньше штрафов (пустых мест в конце строки). Кроме того так и не понял для чего возводить что-то в куб. Что в итоге программа на выходе должна выводить?
0
 Аватар для Nik Golor
3 / 3 / 0
Регистрация: 07.01.2017
Сообщений: 101
08.06.2019, 13:12  [ТС]
Цитата Сообщение от ivan37 Посмотреть сообщение
Не очень понятно задание.
поверьте, мне тоже не особо понятно. Да, надо наиболее выгодно распределить слова. В куб возводим, как я понял, для большей наглядности при получении результата. Но вся суть состоит в том, что когда мы доходим до конечой строки...,за чем-то нужно выполнять рекурсию с конечной строчки и до начальной. Если чесн, смысла не вижу в этом обсалютно. Но наверное это что то типо проверки нашего решения. Мол надо выполнить расчет через ^3 штрафа последней строки, а дальше просто пустить пример подсчета, и довериться. Дабы он всё сам правильно сделает. И такое же с РсМ, но там мы будем, как я понял, просто сохранять результаты этой "проверки". Не могу сделать, потому что: 1) не понимаю смысла зачем это надо вообще. 2) не понял, как это проклятие выполняется. 3) нет примеров выполнения подобного задания.
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9005 / 4706 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
08.06.2019, 15:04
Цитата Сообщение от Nik Golor Посмотреть сообщение
поверьте, мне тоже не особо понятно
Но с чего вы взяли, что непонятное, пересказанное своими словами, станет роднее кому-то из читающих. Приведите текст условия дословно.
1
 Аватар для Nik Golor
3 / 3 / 0
Регистрация: 07.01.2017
Сообщений: 101
08.06.2019, 18:43  [ТС]
IGPIGP, провести динамическое заполнениес строк фиксированной длинны, словами из массива. Провести операции рекурсии и рекурсии с мемоизацией. (более подробно я расписал то, как объясняли мне выполнять это. но вот хоть убейте, не вижу смысла в этом и не пойму, как выполнять).
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9005 / 4706 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
08.06.2019, 20:16
Цитата Сообщение от Nik Golor Посмотреть сообщение
провести динамическое заполнение строк фиксированной длинны
Динамическое заполнение, это видимо противоположность статическому заполнению. Всё бы ни чего, но я понятия не имею о чём тут речь. Если тут говорится о том, что нельзя использовать c-строковые литералы, то ваши преподаватели большие затейники.
Цитата Сообщение от Nik Golor Посмотреть сообщение
Провести операции рекурсии и рекурсии с мемоизацией.
Тут не шибко понятно о чём речь. Я бы предположил, что мемоизационная таблица (хранилище полученных решений), это сама строка массива, содержащая уже имеющееся слово. Однако при чём тут рекурсия? Я не мастак в динамическом программировании и вряд ли скажу тут что-либо ценное. Но думаю, если вы кратко изложите то, что вам сообщили на лекциях по данному вопросу, то это поможет тем, кто смог бы ответить.
0
 Аватар для Nik Golor
3 / 3 / 0
Регистрация: 07.01.2017
Сообщений: 101
08.06.2019, 20:35  [ТС]
можно использовать всё, что угодно. но с применением 2-х циклов. и работая со штрафами (место осталось свободным в строке). сама суть, что штрафы возводятся в ^3 и надо вычисление делать только с последней строкой, а дальше всё по примеру пускать, мол само сделает. В том то и дело, что это максимум информации, что нам давали. Было бы с кем поговорить, дак даже те кто сдали не знают как делать, ибо сдавали методом "чаще хожу, надоем, поставят" , а мне так не годится.

Добавлено через 1 минуту
IGPIGP, что с образованием творится капец, ладно бы как всегда ничего не дали "знаний" прогуглил и научился сам. А тут в сети роюсь уже неделю, и не малейшей зацепки и примера. А они требуют. PS: Страна самообразования.
0
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
08.06.2019, 22:01
По обрывочному описанию кажется, что нужно решить задачу расстановки переносов в тексте методом динамического программирования. Готовое решение: https://www.geeksforgeeks.org/... lem-dp-19/. Может отличаться от ожидаемого, но подойдет как точка входа для поиска решения.
1
 Аватар для Nik Golor
3 / 3 / 0
Регистрация: 07.01.2017
Сообщений: 101
08.06.2019, 22:07  [ТС]
Добавлено через 21 секунду
0x10, сам перенос и распределение слов в сроки - это ясное дело, я писал, что не проблема. А вот именно расчет с последней строчки штрафа и шага вверх "не контролируемого", вот это не понятно вообще.
0
 Аватар для Nik Golor
3 / 3 / 0
Регистрация: 07.01.2017
Сообщений: 101
09.06.2019, 08:59  [ТС]
Вообще, понятие такое. Программа работает как Microsoft Word документ - это ясно-понятно. Но вот сама рекурсия и РсМ, вот эта часть программы меня в замешательство погружает.
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9005 / 4706 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
09.06.2019, 10:30
Цитата Сообщение от Nik Golor Посмотреть сообщение
РсМ
если русскими символами то это российский союз молодежи, а если английскими, то это возможно импульсно-кодовая модуляция. Даже в такой малости ребус.
Nik Golor, если ваши преподаватели говорят вам нечто вроде: "НдлсмддбтпыфолоС но смотрите не вшпо дфшаыывпдрот!!!", это значит, что либо они идиоты, либо вы должны понять о чём речь исходя из пройденного материала. Но глядя на ваш вопрос, трудно сказать в чём тут дело. Сферический конь в вакууме конфликтует с кубическим штрафом PcM. Рекурсивно, причем.
Пока не ощущаю ни чего кроме сочувствия.
0
 Аватар для Nik Golor
3 / 3 / 0
Регистрация: 07.01.2017
Сообщений: 101
10.06.2019, 07:27  [ТС]
IGPIGP, Рекурсия - Р. Рекурсия с мемоизацией - РсМ. А преподаватели придумывают с головы всё, не задумываясь, что нам это искать потом (но надо знать, что искать. и было бы что искать).
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9005 / 4706 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
10.06.2019, 09:37
Цитата Сообщение от Nik Golor Посмотреть сообщение
Рекурсия с мемоизацией - РсМ.
А почему ни кто Гугл об этом не знает? Ваши преподы придумали? Дело в том что россоюз молодёжи плачет. В формате PCM. Ни чем не сжатом и 24-х битном. Горючими сэмплАми.
1
 Аватар для Nik Golor
3 / 3 / 0
Регистрация: 07.01.2017
Сообщений: 101
10.06.2019, 09:44  [ТС]
IGPIGP, да уже вариантов не осталось, очень долго пытаюсь сделать всё это дело..., а кончается всё фразой "это не то, что мы хотим". Ну я уже не знаю, что делать если честно. По ходу из за одного долга с этим заданием придется отчисляться. Обидно очень, уже почти отучился.
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9005 / 4706 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
10.06.2019, 09:59
Цитата Сообщение от Nik Golor Посмотреть сообщение
По ходу из за одного долга с этим заданием придется отчисляться. Обидно очень, уже почти отучился.
Цитата Сообщение от Nik Golor Посмотреть сообщение
А вот именно расчет с последней строчки штрафа и шага вверх "не контролируемого", вот это не понятно вообще.
Мне тоже не понятно. В ссылке от 0x10, вроде показано, как сохраняется уже выполненный расчёт. Может попробовать сделать так же? Или пойти к преподавателю и объяснить почему вас не было на соответствующем занятии?
Алгоритм контроля распределения интересный, кстати.
0
 Аватар для Nik Golor
3 / 3 / 0
Регистрация: 07.01.2017
Сообщений: 101
10.06.2019, 10:44  [ТС]
IGPIGP, я попробую сделать еще вариантов 5 выполнения, и принети в ближайшее время. Может хоть одно утсроит их. Но предчувствую очередное "Это не то, что я хочу"
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9005 / 4706 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
10.06.2019, 10:56
Цитата Сообщение от Nik Golor Посмотреть сообщение
Но предчувствую очередное "Это не то, что я хочу"
Узнайте, что они хотят. Если есть героическое прошлое отношений с кем-то из "них" - постарайтесь сделать так, чтобы "они" забыли. Для остальных случаев есть варианты. Быстро но дорого или как крайность, взять учебный план, свой вариант выполнения, который соответствует, но "не такой". И устроить разборку. В любом разе, нанимать киллера для препода рановато (имхо). Да и дороговато, если не найдётся количества желающих поучаствовать материально, в складчину.
0
 Аватар для Nik Golor
3 / 3 / 0
Регистрация: 07.01.2017
Сообщений: 101
10.06.2019, 11:04  [ТС]
IGPIGP, да что уж, буду думать еще. Выбор не велик уже. Подходил, спрашивал, но бормочат постоянно одно и то же. Придумаю что-нибудь, не в первой.
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9005 / 4706 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
10.06.2019, 11:10
Удачи.
0
 Аватар для Nik Golor
3 / 3 / 0
Регистрация: 07.01.2017
Сообщений: 101
12.06.2019, 06:17  [ТС]
IGPIGP, в общем, препод не захотел принемать. Сказал приходить 13-ого. Ладно, опытаюсь еще что-то придумать до завтра, может получится угодить наконец-то.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.06.2019, 06:17
Помогаю со студенческими работами здесь

Рекурсия: генерация следующего элемента заданной последовательности
Кто знает как написать программу на C ++, которая рекурсивно генерирует следующий времена этой последовательности: (1; 1/2; 5/2; 8; 53/2;...

Рекурсия
Помогите с лабой!!! Нужен код Спасибо заранее

Рекурсия
Помогите написать функцию которая будет считать эту рекуррентную формулу с помощью рекурсии

рекурсия в С++
Изучаю использование рекурсивной функции в С++. Правильно ли я понял: - что нет ограничений в max depth вызова рекурсии которые функция...

Рекурсия
Помогите с рекурсией


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США. Нашел на реддите интересную статью под названием «Кто-нибудь знает, где получить бесплатный компьютер или. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru