Под конец для не вывожу уже.
Значит так, есть лист метала. Размеры: 10 х 20. Этот лист метала стоит 24 тугрика.
Сколько будет стоять лист метала 48 х 125, если шаг стороны А (10) при + 10см - 13 тугриков, шаг стороны Б (20) при + 20см - 1.6 тугриков, при + 50см - 1.9 тугриков, при + 80см - 2.4 тугрика.
Если в таком толковании не очень понятно, вот скрин:
http://dl.dropbox.com/u/14712568/%D0%B7%D0...D0%BA%D0%B0.png
Спустя 8 минут, 53 секунды (2.11.2011 - 19:53) Игорь_Vasinsky написал(а):
весёлая головоломка...
что за шаг стороны?
что за шаг стороны?
Спустя 16 минут, 25 секунд (2.11.2011 - 20:09) redreem написал(а):
ПОДСКАЖИТЕ??? да тут подсказкой не обойдется. это задача оптимизации раскроя. по ней некоторые диссертации защищают у вас конечно вроде тривиальный случай, но тем не менее....
Спустя 1 час, 2 минуты (2.11.2011 - 21:11) RCuPeR написал(а):
Цитата |
весёлая головоломка... |
Не то слово...
Цитата |
что за шаг стороны? |
Увеличение определенной стороны на n раз.
Цитата |
ПОДСКАЖИТЕ??? да тут подсказкой не обойдется. это задача оптимизации раскроя. по ней некоторые диссертации защищают у вас конечно вроде тривиальный случай, но тем не менее.... |
И что же теперь делать ? Я уже 2 часа сижу мозгую....
Спустя 4 минуты, 24 секунды (2.11.2011 - 21:16) Игорь_Vasinsky написал(а):
Цитата |
10 х 20 |
Цитата |
Увеличение определенной стороны на n раз. |
тут 2 стороны - ширина и высота, что каждой?
Спустя 5 минут (2.11.2011 - 21:21) RCuPeR написал(а):
Ну смотри:
у нас прямоугольник 10х20см. Стоит это прямоугольник 24 рубля.
Как узнать цену прямоугольника с размером 15х20см, т.е шаг стороны А + 5 ?
у нас прямоугольник 10х20см. Стоит это прямоугольник 24 рубля.
Как узнать цену прямоугольника с размером 15х20см, т.е шаг стороны А + 5 ?
Спустя 13 минут, 2 секунды (2.11.2011 - 21:34) Игорь_Vasinsky написал(а):
Так я понял
10-20 -> 24
10-?? -> 13
??-20 -> 1.6
??-50 -> 1.9
??-80 -> 2.4
------------------------------
48-125 -> ???
на что то похоже...
10-20 -> 24
10-?? -> 13
??-20 -> 1.6
??-50 -> 1.9
??-80 -> 2.4
------------------------------
48-125 -> ???
на что то похоже...
Спустя 6 минут, 36 секунд (2.11.2011 - 21:40) RCuPeR написал(а):
Цитата (Игорь_Vasinsky @ 2.11.2011 - 18:34) |
Так я понял 10-20 -> 24 10-?? -> 13 ??-20 -> 1.6 ??-50 -> 1.9 ??-80 -> 2.4 ------------------------------ 48-125 -> ??? на что то похоже... |
Чуть-чуть не то
Ща подумаю как правильно описать - отпишу.
Спустя 3 минуты, 17 секунд (2.11.2011 - 21:44) Игорь_Vasinsky написал(а):
не не.. я со стороны вижу что не правильно обрисовал - я то в суть въехал
меня смущает что расчёт нужен для стороны А = 48, а шаг указан в 10
1. Высчитать сколько стоит шаг стороны A в 1 см
А для Б - то 3 цены для 3х шагов.
Это наверно человек придумал, который хочет чтоб его бухгалтер застрелился
меня смущает что расчёт нужен для стороны А = 48, а шаг указан в 10
1. Высчитать сколько стоит шаг стороны A в 1 см
А для Б - то 3 цены для 3х шагов.
Это наверно человек придумал, который хочет чтоб его бухгалтер застрелился
Спустя 8 минут, 54 секунды (2.11.2011 - 21:53) redreem написал(а):
у тебя задача минимизации цены или оптимального раскроя (экономия материала)? это 2 разных подхода к решению.
Спустя 1 минута, 18 секунд (2.11.2011 - 21:54) Игорь_Vasinsky написал(а):
redreem
шаришь?
шаришь?
Спустя 2 минуты, 16 секунд (2.11.2011 - 21:56) redreem написал(а):
Игорь_Vasinsky, шарю, но бухой, просто наводящие вопросы способен задавать
Спустя 28 минут, 5 секунд (2.11.2011 - 22:24) RCuPeR написал(а):
Так мужики, я честно говоря уже сам запутался.
Давайте перенесем сие толкование к завтрашнему утру ?
Давайте перенесем сие толкование к завтрашнему утру ?
Спустя 1 час, 46 минут, 58 секунд (3.11.2011 - 00:11) Игорь_Vasinsky написал(а):
мне кажется что к завтрашнему утру я сию науку не осилю.. я php то 11 год учу и всё в ламмерах...
Спустя 5 минут, 51 секунда (3.11.2011 - 00:17) Winston написал(а):
Цитата (Игорь_Vasinsky @ 2.11.2011 - 23:11) |
я php то 11 год учу и всё в ламмерах. |
Офигеть тебя в книгу Гиннесса за такой рекорд записать нужно
Спустя 3 минуты, 50 секунд (3.11.2011 - 00:21) Игорь_Vasinsky написал(а):
как самого тупого?
Спустя 3 минуты, 39 секунд (3.11.2011 - 00:25) Winston написал(а):
Самый долгий путь к профессионализму, так и не достигнув его
PS: если бы ты все 11 лет так активно изучал язык, как сейчас, то был бы не хуже наших экспертов.
PS: если бы ты все 11 лет так активно изучал язык, как сейчас, то был бы не хуже наших экспертов.
Спустя 1 минута, 33 секунды (3.11.2011 - 00:26) Игорь_Vasinsky написал(а):
да я утрирую. 11 лет назад я кликнул по страничке правой кнопкой и увидел HTML код и начал эксперементировать. дурак (почему мышки не однокнопочные).
а PHP лет 5
а PHP лет 5
Спустя 1 минута, 18 секунд (3.11.2011 - 00:27) Winston написал(а):
Цитата (Игорь_Vasinsky @ 2.11.2011 - 23:26) |
а PHP лет 5 |
Не показатель Ты на Твина посмотри, всего 3 года
Спустя 4 минуты, 26 секунд (3.11.2011 - 00:32) Игорь_Vasinsky написал(а):
оОоо.. так я дикарём. про форум то когда узнал.. 1,5 года назад. эх... сразу бы.
Спустя 49 минут, 20 секунд (3.11.2011 - 01:21) RCuPeR написал(а):
Так, а ну брысь в чат флудить !
Спустя 11 часов, 10 минут, 41 секунда (3.11.2011 - 12:32) RCuPeR написал(а):
Хєлоу пипл !
Вернемся к нашим птичкам ?!
Значит так:
Как узнать сколько стоит 1 квадратный метр если известно, что кусок 10Х20см стоит 24рубля ?
Вернемся к нашим птичкам ?!
Значит так:
Как узнать сколько стоит 1 квадратный метр если известно, что кусок 10Х20см стоит 24рубля ?
Спустя 6 минут, 2 секунды (3.11.2011 - 12:38) redreem написал(а):
вчера были тугрики. это кардинально меняет условие!
Спустя 1 минута, 9 секунд (3.11.2011 - 12:39) Игорь_Vasinsky написал(а):
тут это правило не канает т.к. :
Цитата |
если шаг стороны А (10) при + 10см - 13 тугриков, шаг стороны Б (20) при + 20см - 1.6 тугриков, при + 50см - 1.9 тугриков, при + 80см - 2.4 тугрика. |
вообще исходя из
Цитата |
Размеры: 10 х 20. Этот лист метала стоит 24 тугрика. |
10х20 = 200 кв. см ->24
1кв. см = 24/200 -> 8.33 тугрика
Спустя 2 минуты, 4 секунды (3.11.2011 - 12:41) redreem написал(а):
я вчера спросил:
Цитата |
у тебя задача минимизации цены или оптимального раскроя (экономия материала)? это 2 разных подхода к решению. |
- где ответ?
Спустя 4 минуты, 48 секунд (3.11.2011 - 12:46) RCuPeR написал(а):
Цитата |
вчера были тугрики. это кардинально меняет условие! |
Не суть.
Цитата |
10х20 = 200 кв. см ->24 1кв. см = 24/200 -> 8.33 тугрика |
Чудесно. Следую из этого квадрат 141х314 стоит 5315, так?
Спустя 41 секунда (3.11.2011 - 12:47) RCuPeR написал(а):
Цитата |
где ответ? |
Я не знаю
Скорей "оптимального раскроя".
Спустя 8 минут, 52 секунды (3.11.2011 - 12:55) Игорь_Vasinsky написал(а):
141х314х8.33 тугрика
Спустя 4 минуты, 57 секунд (3.11.2011 - 13:00) RCuPeR написал(а):
Цитата |
( 141 х 314 ) / 8.33 |
Скорей так.
Спустя 20 секунд (3.11.2011 - 13:01) redreem написал(а):
значится такс...
1. делаем массив (P-patterns) со значениями шагов, упорядоченными по убыванию и соответствующими им ценами. P['x'][0]=... P['x'][1]... для Y аналогично.
2. делаем функцию, которая будет формировать "шаговые куски". работет она так:
- функция формирует некий глобальный массив-координатную матрицу (T-tiles) раскроя.
- функции передается имя рабочего массива (P['x'] например), текущий индекс (при первом запуске 0) и линейный размер листа A.
- ф. разбивает переданный линейный размер на целое количество шагов по текущему индексу массива P, заполняет массив T получившимся количеством, вычисляет сколько там от куска осталось и вызывает сама себя со следующим индексом массива P.
Вызываем эту функцию 2 раза (для 2-х линейных размеров).
В результате имеем массив T, который пробегаем 2-мя вложенными циклами с вычислением стоимости каждого куска.
1. делаем массив (P-patterns) со значениями шагов, упорядоченными по убыванию и соответствующими им ценами. P['x'][0]=... P['x'][1]... для Y аналогично.
2. делаем функцию, которая будет формировать "шаговые куски". работет она так:
- функция формирует некий глобальный массив-координатную матрицу (T-tiles) раскроя.
- функции передается имя рабочего массива (P['x'] например), текущий индекс (при первом запуске 0) и линейный размер листа A.
- ф. разбивает переданный линейный размер на целое количество шагов по текущему индексу массива P, заполняет массив T получившимся количеством, вычисляет сколько там от куска осталось и вызывает сама себя со следующим индексом массива P.
Вызываем эту функцию 2 раза (для 2-х линейных размеров).
В результате имеем массив T, который пробегаем 2-мя вложенными циклами с вычислением стоимости каждого куска.
Спустя 2 минуты, 15 секунд (3.11.2011 - 13:03) RCuPeR написал(а):
Цитата (redreem @ 3.11.2011 - 10:01) |
значится такс... 1. делаем массив (P-patterns) со значениями шагов, упорядоченными по убыванию и соответствующими им ценами. P['x'][0]=... P['x'][1]... для Y аналогично. 2. делаем функцию, которая будет формировать "шаговые куски". работет она так: - функция формирует некий глобальный массив-координатную матрицу (T-tiles) раскроя. - функции передается имя рабочего массива (P['x'] например), текущий индекс (при первом запуске 0) и линейный размер листа A. - ф. разбивает переданный линейный размер на целое количество шагов по текущему индексу массива P, заполняет массив T получившимся количеством, вычисляет сколько там от куска осталось и вызывает сама себя со следующим индексом массива P. Вызываем эту функцию 2 раза (для 2-х линейных размеров). В результате имеем массив T, который пробегаем 2-мя вложенными циклами с вычислением стоимости каждого куска. |
Ты хочешь окончательно разнести мой мозг в хлам ?
Спустя 2 минуты, 33 секунды (3.11.2011 - 13:06) redreem написал(а):
это самый просто вариант. по идее наворачивать метод можно бесконечно. например для каждого промежуточного куска рассчитывать оптимальную заполяемость всеми меньшими шаблонами.
Спустя 31 секунда (3.11.2011 - 13:06) redreem написал(а):
я сразу сказал, что по этой задаче диссертации пишут. ты хочешь 3-мя строчками ее решить - неполучится.
Спустя 1 минута, 18 секунд (3.11.2011 - 13:07) Игорь_Vasinsky написал(а):
взрыв мозга
Спустя 4 минуты, 50 секунд (3.11.2011 - 13:12) redreem написал(а):
вот твоя задача - там еще какой-то онлайн калькулятор есть - можешь глянуть http://ru.wikipedia.org/wiki/Задача_об_упаковке_в_контейнеры
Спустя 30 минут, 18 секунд (3.11.2011 - 13:42) RCuPeR написал(а):
А мне кажется, тут все куда проще.
Значит так, мой алгоритм. Условие в картинке:Картинка
Заготовка: Заготовка
Значит так, мой алгоритм. Условие в картинке:Картинка
Заготовка: Заготовка
- 1. Вычисляем цену на 1 кв. см (10х20 = 200 кв. см ->24 | 1кв. см = 24/200 -> 8.33).
- 2. Проверяем размер каждых сторон:
A: если размер А больше 20 (исходный размер + шаг 10см), то где-то там, в хранилище дописываем + 13 тугриков (т.е 20х20 будет стоять 37 тугриков, 30х20 - 50 тугриков). Узнать количество шагов А можно следуя следующей формуле:
var a = указанный размер (дефолтный 10).
var b = шаг (10см.)
var n = количество шагов.
n = a / b;
Следуя из этого в наше хранилище поступает число которое содержит сумму стороны А (n * 13);
B: вычисляем сторону В по той же схеме. Только у нас дано 3 шага. Если число В > 40 (исходный размер 20 + 20 - размер первого шага) то:
var a = указанный размер (дефолтный 10).
var b = шаг (20см.)
var n = количество шагов.
n = a / b;
В хранилище поступает B(n * 1.6);
По той же схеме с остальными двумя шагами. - 3. Составляем цену за 1 кв.см с учетом всех шагов. Т.е, хранилище А + хранилище В; var new_sum = A(array) + B(array);
- 4. И последнее, узнаем стоимость нашего указанного куска метала. ( А * B ) / new_sum;
Спустя 16 минут (3.11.2011 - 13:58) redreem написал(а):
да как хочешь. я ж говорю - четкого решения нет - это задача последовательных приближений. если тебя (твоего заказчика) метод устраивает - ради бога.
Спустя 9 минут, 33 секунды (3.11.2011 - 14:08) RCuPeR написал(а):
Я так понял, ты разбираешься, проанализируй мой метод. Он будет работать ?
Свернутый текст
Заказчик я сам.
Спустя 11 минут, 28 секунд (3.11.2011 - 14:20) redreem написал(а):
считать будет видимо что-то. еслиб ты рассказал конкретное приложение этих рассчетов, то тогда можно было бы судить об их корректности. что считаем? доски, листы какие-нибудь, или что? какие есть уловия по раскрою? например стандартные листы или любые и т.п. что делается с обрезками потом? на выброс?
Спустя 2 минуты, 38 секунд (3.11.2011 - 14:22) RCuPeR написал(а):
Да это не суть. Не воспринимай так буквально. Нужно просто узнать цену указанного квадрата с учетом известных шагов на обе стороны.
Спустя 41 минута, 37 секунд (3.11.2011 - 15:04) redreem написал(а):
я не могу говорить о корректности расчетов, если не знаю как проверить эту корректность на "пальцах" или "листке бумаги".
Спустя 5 минут, 23 секунды (3.11.2011 - 15:09) Игорь_Vasinsky написал(а):
ну просчитай 3 листа с разными размерами
Вычесли во сколько обошолся каждый размер - для 1 кв. см
сложи эти 3 величины и раздел на 3 - получишь среднюю стоимость 1 кв см и сравни с 8.33 тугрика
И увидишь.
Вычесли во сколько обошолся каждый размер - для 1 кв. см
сложи эти 3 величины и раздел на 3 - получишь среднюю стоимость 1 кв см и сравни с 8.33 тугрика
И увидишь.
Спустя 19 минут, 7 секунд (3.11.2011 - 15:28) RCuPeR написал(а):
Игорь, а цена за 1 кв. см то не правильная. нужно так: 24 / (10 * 20);
А у нас было (10 * 20) / 24; Т.е, мы площадь делили на цену, а нужно наоборот, походу .
А у нас было (10 * 20) / 24; Т.е, мы площадь делили на цену, а нужно наоборот, походу .
_____________
Гнусный социопат с комплексом Бога.