Nikolay
Я тоже думал сделать через одномерный, но как-то надо тогда назад собирать
gsomix
Nikolay
Просто однмерный с размером n*m?
gsomix
Да.
gsomix
И вводишь на нем индексацию.
gsomix
Обычно становится проще.
gsomix
Ну, или Array2D?
gsomix
Выбирай, что удобнее.
gsomix
Но не [][].
Nikolay
Ну это не очень удобно
Nikolay
Тогда нужно будет везде с собой таскать размер массива
gsomix
Угу.
gsomix
Стандартный подход в библиотеках, работающих с матрицами.
gsomix
Указатель на участок памяти, размеры и индексатор.
gsomix
Ну, и нужно определиться, как укладывать строки и столбцы в памяти.
Klei
Nikolay
Но из него не получишь NxM
Nikolay
Размеры двумерного
Klei
Сорян. Потерял контекст, думал про двумерный говоришь.
Romɑn
Как будто на джаве пишешь.
Кстати да, но тут есть свой плюс. Который, кстати есть и у safe.
Плюс ангуляра в том, что все стандартизировано. Т.е. большинство разработчиков будут пользоваться одним и тем же подходом используя ангуляр. В отличии от реакта.
Кстати, попытка сделать fable + meteorjs у меня не удалась :(
Romɑn
Nikolay
Блин, я очень сильно туплю, не пойму как получить i,j из i одномерного массива, зная размер двумерного NxM
Nikolay
для j понятно, будет j2 = i / m, а для i чёт не пойму
Vladislav
Анна
gsomix
Klei
Анна
gsomix
Анна
там координаты для восстановления ответа нужны только
Nikolay
Nikolay
Их же рассчитать можно простыми операциями
Анна
Nikolay
А, ну если ты про сортировку да, я думал так
Nikolay
Но это прям как-то сильно костыльно
Анна
отсортировать по значению, выбрать первые n, координаты из пар для ответа
Nikolay
Если код будет красивым, мб на него поведутся люди
Nikolay
И к нам в секту прибудет свежая кровь
Nikolay
Ну и ещё это мой перфикционизм
gsomix
gsomix
А ты еще людей зовешь.
Nikolay
Nikolay
Главное адептов набрать
gsomix
Анна
Ну и ещё это мой перфикционизм
если координаты хочется прямо вычислять, то можно одной координатой обойтись и длиной, но одну точно нужно сохранить перед сортировкой
Анна
y = i / n (* номер строки *)
x = i % n (* номер столбца *)
что ли так
Nikolay
Давай лучше по этому :D Объясни мне не очень умному, на основе каких столбцов будет рассчёт для 4 недели
Анна
Nikolay
Аа, дошло
Анна
потому что там уже будут храниться оптимальные стоимости для n, n + 1, n + 2 и т д рабочих для третьей недели
Nikolay
Считать содержание лишнего
Анна
Считать содержание лишнего
стоимость рабочих, если было n, а стало n + m. Туда и содержание лишних, и найм новых надо считать и выбирать оптимальное
Анна
У тебя есть решения для чуть меньшей подзадачи (Например, для предыдущей недели в этом случае), они уже оптимальные. И есть способ получить оптимальное решение для текущей подзадачи из предыдущих. Рекуррентная штуковина такая получается: решаешь для тривиального случая - первой недели, и понеслась
Nikolay
Nikolay
Вроде так
Nikolay
Странная фигня
Анна
не, нужно складывать стоимость найма разницы с той клеткой, откуда считаешь. Даже если ты на 4 неделе уволишь, сумма с третьей переносится
Анна
в последнем столбце итоговая сумма получится уже
Анна
не за неделю, а за весь период
Nikolay
А, ок, видимо прост прибавить надо
Nikolay
?
Nikolay
Не, вронк
Анна
вот я тут ещё некую формулу перехода от клетки к клетке попыталась изобразить
Nikolay
Nikolay
Вроде так
Анна
похоже
Nikolay
Я очень странно решал это :D
Nikolay
Хотя думаю там всем пофиг
Анна
Nikolay
У меня без кода
Nikolay
Мне лень его писать
Nikolay
Анна
Тогда непонятно, что тебе кажется странным :)
Анна
Норм способ решать такие задачи, можешь ещё потренироваться вот: http://acm.timus.ru/problemset.aspx?space=1&tag=dynprog