| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Сообщество > Разное > Размять мозги....

Размять мозги....

Ответ
Поиск в этой теме
 
Непрочитано 13.02.2017, 13:16
#5021
Дмитррр

НЛО
 
Регистрация: 09.07.2007
Тутошние мы.
Сообщений: 6,103


А, в этом плане. Тогда да. Тот же метод приближений, но уже не примерного ответа, а точных экстремумов.
Дмитррр вне форума  
 
Непрочитано 13.02.2017, 14:12
#5022
KronSerg

Вода - моя работа
 
Регистрация: 10.11.2009
Санкт-Петербург
Сообщений: 3,639


Кстати, для дискретных значений, можно ещё немного сократить количество итераций:
Например, имеем 20 экстремумов искомая пара (7 и 6), считаем их в последовательности 2→10→4→8→6→7 (6 итераций)
Для пары 4 и 3 будет уже 2→10→4→3 (4 итерации)
Для пары 16 и 17: 2→10→19→12→17→14→15→16 (8 итераций)
Для варианта 19 и 20 соответственно 2→10→19→20(4 итерации).
Добавляется лишний условный оператор, зато сокращается количество вычислений площади.
__________________
Нерешаемых проблем не бывает.
KronSerg вне форума  
 
Непрочитано 13.02.2017, 14:42
#5023
Дмитррр

НЛО
 
Регистрация: 09.07.2007
Тутошние мы.
Сообщений: 6,103


Цитата:
Сообщение от KronSerg Посмотреть сообщение
Кстати, для дискретных значений, можно ещё немного сократить количество итераций:
Например, имеем 20 экстремумов искомая пара (7 и 6), считаем их в последовательности 2→10→4→8→6→7 (6 итераций)
Для пары 4 и 3 будет уже 2→10→4→3 (4 итерации)
Для пары 16 и 17: 2→10→19→12→17→14→15→16 (8 итераций)
Для варианта 19 и 20 соответственно 2→10→19→20(4 итерации).
Добавляется лишний условный оператор, зато сокращается количество вычислений площади.
А это по какой логике примеры?
Наиболее простой метод - "метод деления отрезка пополам". Хоть 1000 экстремумов, они быстро будут делиться на 2 в каждом из шагов и за 10 шагов найдутся нужные. Например, для поиска 33-34
500-перелёт
250-перелёт
125-перелёт
72-перелёт
36-перелёт
18-недолёт
24-недолёт
30-недолёт
33-недолёт
34-перелёт
Ответ:33-34

Правда и меньше сократить не факт, что получится... Допустим целевые 499-500.
При делении пополам будет
500-перелёт
250-375-437-405-453-475-488-495-498-недолёты
499-недолёт
ответ:499-500

Можно впринципе подумать как не пополам делить, а в зависимости от того, насколько близко попал предыдущий подбор. Например в предыдущем моём примере 500 наверняка намного ближе к ответу, чем 1. И вряд ли разумно проверять 250 на следующем шаге.
Дмитррр вне форума  
 
Непрочитано 13.02.2017, 15:47
#5024
Ильнур

КМ (+КМД), КЖ (КЖФ)
 
Регистрация: 30.05.2007
Далече
Сообщений: 25,096


Цитата:
Сообщение от s7onoff Посмотреть сообщение
...Лови кусочную функцию:

Дай мне формулу нахождения такого y, при котором площадь под ним на отрезке [0;4] = S.
1. Функция имеет разрыв при х=2.
2. Нужно уточнить "под" - ломаная из двух твоих кусков, если даже к ним дабавить трети соединяющий, не имеет дна. Может ограничить снизу нулем или как...но надо уточнить.
Цитата:
И вторая тоже?
Думаю, тоже. Нужен пример, например из трех кусков.
__________________
Воскресе
Ильнур вне форума  
 
Непрочитано 13.02.2017, 15:57
#5025
s7onoff


 
Сообщений: n/a


Ильнур,
1. Как он на это дело влияет? не вижу разницы между непрерывной и прерывающейся кусочными функциями. Главное, что на указанном отрезке функция определена.
2. Нам нужно расстояние от прямой до графика. График и есть дно. Ты же читал условие задачи в 5004.
 
 
Непрочитано 13.02.2017, 16:01
#5026
KronSerg

Вода - моя работа
 
Регистрация: 10.11.2009
Санкт-Петербург
Сообщений: 3,639


Цитата:
Сообщение от Дмитррр Посмотреть сообщение
Можно впринципе подумать как не пополам делить, а в зависимости от того, насколько близко попал предыдущий подбор. Например в предыдущем моём примере 500 наверняка намного ближе к ответу, чем 1. И вряд ли разумно проверять 250 на следующем шаге.
Если экстремумов 1000, то действительно лучше сделать деление отрезка не пополам, а в зависимости от величины промаха.
Например, если 500 перелёт 250 недолёт, но 500 - это 3% от суммарной ошибки, а 250 - 97%, то следующим шагом можно делать не 375, а 492 (500-(500-250)*3%)
__________________
Нерешаемых проблем не бывает.
KronSerg вне форума  
 
Непрочитано 13.02.2017, 17:11
#5027
Ильнур

КМ (+КМД), КЖ (КЖФ)
 
Регистрация: 30.05.2007
Далече
Сообщений: 25,096


Цитата:
Сообщение от s7onoff Посмотреть сообщение
Ильнур,
1. Как он на это дело влияет? не вижу разницы между непрерывной и прерывающейся кусочными функциями. Главное, что на указанном отрезке функция определена.
2. Нам нужно расстояние от прямой до графика. График и есть дно. Ты же читал условие задачи в 5004.
1. У автора - конкретно ЛОМАНАЯ. У тебя - палочки в пространстве, как кишечные. Какая нафег площадь неогороженнная? Ну и в точках ломки координаты кусков равны - это граничное условие существенно влияет на алгоритм решения. Ты умышленно или неумышленно УСЛОЖНЯЕШЬ.
2. Если применить условие автора " ниже красной, но выше ломаной, желтым", то для диапазона y=(-2;0) решение просто изящное: y=-2+2*sqrt(S).
3. Для остальных кусков - в таком же темпе.
4. Если ломаная меняется, то и решение меняется. А как же.
__________________
Воскресе
Ильнур вне форума  
 
Непрочитано 13.02.2017, 17:22
#5028
s7onoff


 
Сообщений: n/a


Ильнур, окееей пусть будет непрерывная


Тем не менее, нас не интересует формула на каждом куске. Нам нужна ОДНА красная линия, а не одна здесь и вторая там. Но такая, чтоб ОБЩАЯ площадь на ВСЕХ кусках была равна данной.
 
 
Непрочитано 13.02.2017, 20:09
1 | #5029
xmih


 
Регистрация: 07.05.2009
Сообщений: 182


Цитата:
Сообщение от Дмитррр Посмотреть сообщение
Мои соображения
Первую задачу решить не тяжело, просто пройдя циклом по всем отрезкам графика. При этом пришлось на каждом отрезке определять 1 из 4 вариантов (обе точки выше красной, обе очки ниже, левая ниже, правая ниже) - формулы для всех 4 случаев разные. И потом суммировать всё.
Можно ли это упростить - не знаю...
Если "отрезки" изначально сориентировать (чтобы левая всегда была ниже правой), то останется 3 варианта. Потом рассортировать все по нижним точкам, потом в этом массиве отрезать хвостище (отсечь вариант 1), потом остаток отсортировать по верхним точкам и разделить на 2 массива по вариантам, которые пихать в свои циклы...
xmih вне форума  
 
Непрочитано 14.02.2017, 06:27
#5030
Ильнур

КМ (+КМД), КЖ (КЖФ)
 
Регистрация: 30.05.2007
Далече
Сообщений: 25,096


Цитата:
Сообщение от s7onoff Посмотреть сообщение
...Тем не менее, нас не интересует формула на каждом куске. Нам нужна ОДНА красная линия, а не одна здесь и вторая там. Но такая, чтоб ОБЩАЯ площадь на ВСЕХ кусках была равна данной.
Ты недопонял: решение y=-2+2*sqrt(S) - как раз для ОДНОЙ красной линии. Для диапазона y=(-2;0). Решения будут для каждого диапазона своими - это обизоном. Ибо функция изначально КУСОЧНАЯ. Ты на свою запись посмотри - это же по сути тоже перечень ДВУХ функций. Я же дураком не прикидываюсь и не требую ИНОЙ записи исходных. Будь любезен, восприми ответ в предоставленной форме.
Решение 1 - для первой задачи. Решение вывел только для первого диапазона, остальное - рутина, сами тренируйтесь в решении квадратного уравнения - ВСЕ сводится к решению квадратного уравнения. Это уровень 6-го класса приходской школы.
Решение 2 - полное, для свежей последней задачи.



Миниатюры
Нажмите на изображение для увеличения
Название: Решение 1.jpg
Просмотров: 269
Размер:	37.2 Кб
ID:	183657  Нажмите на изображение для увеличения
Название: Решение 2.jpg
Просмотров: 270
Размер:	35.6 Кб
ID:	183658  
__________________
Воскресе
Ильнур вне форума  
 
Непрочитано 14.02.2017, 07:35
#5031
Fogel

люблю мастерить
 
Регистрация: 21.01.2005
Челябинск
Сообщений: 9,913


Я бы начальный график еще разбил на кусочки - добавив новые точки в местах пересечения графика с красной линией. После этого задача резко упрощается - отбрасываем участки над линией и считаем площади элементарных трапеций и треугольников. А решение обратной задачи стоит вести апроксимацией, не выйдет составить уравнение - в зависимости от уровня красной линии участки могут добавляться и исчезать. Можно прямую строить через две пробных точки, можно параболу через три. С параболой точнее, с прямой проще.
Fogel вне форума  
 
Непрочитано 14.02.2017, 08:55
#5032
Ильнур

КМ (+КМД), КЖ (КЖФ)
 
Регистрация: 30.05.2007
Далече
Сообщений: 25,096


Цитата:
Сообщение от Fogel Посмотреть сообщение
...решение обратной задачи стоит вести апроксимацией,..
Последовательное приближение элементарным суммированием из трех-четырех шагов даст любой удовлетворяющей точности ответ.
Если же "машинизировать" (тут уж было предложение в автокаде запилить, лиспом видимо), то вообще не будет предела точности. Тут недавно кто-то автоматизировал построение прямоугольника в прямоугольнике, хотя задача как раз нетривиальная - через зависимости получилось просто изящно. Нажал на пару кнопку - получил результат с нужной точностью.
Да просто в екселе набить и суммировать. Один раз набил, и суммируй сколь хош, пока площадь не удовлетворит.
__________________
Воскресе
Ильнур вне форума  
 
Непрочитано 14.02.2017, 09:22
#5033
Fogel

люблю мастерить
 
Регистрация: 21.01.2005
Челябинск
Сообщений: 9,913


Цитата:
Сообщение от Ильнур Посмотреть сообщение
Один раз набил, и суммируй сколь хош, пока площадь не удовлетворит
В нем какраз штатная функция "подогнать" встроена.
Решить конечно же можно и "честно" и даже заставить делать это машину, только придется сделать это в нескольких промежутках - условно провести красную линию через все вершины графика и решить уравнение для всех "промежутков между линиями", но тогда можно обойтись без подгонки, просто машина будет формировать свой список с коэффициентами уравнения для каждого промежутка. ИМХО сложно, но вполне возможно. Пожалуй самая та задачка для LISP'а - работа со списками переменной длины
Fogel вне форума  
 
Непрочитано 14.02.2017, 11:11
#5034
Ильнур

КМ (+КМД), КЖ (КЖФ)
 
Регистрация: 30.05.2007
Далече
Сообщений: 25,096


Цитата:
Сообщение от Fogel Посмотреть сообщение
... решить уравнение для всех "промежутков между линиями", но тогда можно обойтись без подгонки...вполне возможно...
__________________
Воскресе
Ильнур вне форума  
 
Непрочитано 14.02.2017, 13:01
#5035
CTPAHHNK

чертила
 
Регистрация: 30.11.2009
Вятка
Сообщений: 828


А в каком виде дается график?
формулы на бумаге это одно, таблицы эхел другое, вектоный чертеж третье.
__________________
Основа вятской философии: "Так-то да, а так-то и нет." :secret:
CTPAHHNK вне форума  
 
Непрочитано 15.02.2017, 10:05
#5036
Denbad

Проектировщик
 
Регистрация: 01.08.2006
Челябинск
Сообщений: 2,157


Как вариант, находить положение красной линии после ввода каждой следующей точки. Алгоритм будет навороченный, но зато точное решение в любой момент.
__________________
Понятно только то, что ничего не понятно.
Denbad вне форума  
 
Непрочитано 15.02.2017, 10:26
#5037
Солидворкер
Moderator

Конструктор (машиностроение)
 
Регистрация: 23.10.2006
Россия
Сообщений: 22,997
<phrase 1=


Подкинули тут задачку, уверяют что дети решают ее очень быстро, а я уже второй день решить не могу.
Есть два набора деревянных кубиков, количество кубиков в них разные. Из каждого из наборов по отдельности можно сложить куб большего размера, причем лишних кубиков не остается. Наборы смешивают и складывают из них еще один куб, причем лишних кубиков опять не остается.
Нужно определить минимальное количество кубиков в каждом из наборов.
Солидворкер вне форума  
 
Непрочитано 15.02.2017, 10:49
#5038
Bull

Конструктор по сути (машиностроитель)
 
Регистрация: 10.10.2005
Набережные Челны (это где КамАЗ)
Сообщений: 11,391


Цитата:
Сообщение от Солидворкер Посмотреть сообщение
уверяют что дети решают ее очень быстро, а я уже второй день решить не могу.
А как она может быть решена? С учетом того, что с ростом кубика шаг по кол-ву кубиков в наборе будет составлять - 1 - 8 - 27 и т.д. И любая сумма из ряда в итоге не даст требуемого .

Что-то мне кажется, что тут условия задачи корректные потеряны. Как в анекдоте с Ржевским про парикмахера и херувима Или кубики разные по высотам. Но тогда решений может быть много.
__________________
Век живи, век учись - ...
Bull вне форума  
 
Непрочитано 15.02.2017, 10:52
#5039
Denbad

Проектировщик
 
Регистрация: 01.08.2006
Челябинск
Сообщений: 2,157


Цитата:
Сообщение от Солидворкер Посмотреть сообщение
Нужно определить минимальное количество кубиков в каждом из наборов.
1 и 8, общий 9. Надо просто глянуть на таблицу кубов чисел.
Offtop: упс, я ступил
__________________
Понятно только то, что ничего не понятно.
Denbad вне форума  
 
Непрочитано 15.02.2017, 11:03
#5040
Ильнур

КМ (+КМД), КЖ (КЖФ)
 
Регистрация: 30.05.2007
Далече
Сообщений: 25,096


Цитата:
Сообщение от Bull Посмотреть сообщение
... Как в анекдоте с Ржевским про парикмахера и херувима ...
https://webcache.googleusercontent.c...&ct=clnk&gl=ru
__________________
Воскресе
Ильнур вне форума  
Ответ
Вернуться   Форум DWG.RU > Сообщество > Разное > Размять мозги....

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск