Логические задачи |
Для любителей поломать голову в переносном смысле. Ожидаются задачки на логику и сообразительность, и конечно, попытки их решения.
Тот, кто нашел решение и хочет им поделиться, дабы не лишать интереса остальных участников, может отправить его модератору на отельскую почту.
|
Создатель: Trianon |
155 | ±MNNN Циничный Кот | 10/16/2001 1:06:56 AM | Trianon --> (154) Я вроде пока ещё не ругался... ;о)
|
154 | Trianon | 10/16/2001 12:30:31 AM | ±MNNN Циничный Кот --> (152) Кот, ну ты это... когда ругаться тянет.... до десяти-то считай, а?
|
153 | Салли | 10/15/2001 1:33:15 PM | Электра --> (151) Во-во, зачет автоматом нужно будет ставить не за логику в этом случае)) Все же сразу начинают думать о ракетах, а не о людях))
|
152 | ±MNNN Циничный Кот | 10/15/2001 11:52:25 AM | Электра --> (151) Я бы на вашем месте... Не стал этого делать... Как шутка - это хорошо, а как задача студентам, в особенности задача по _логике_ - не катит совершенно... Ибо логическим путем её решить (по крайней мере в постановке 146) невозможно...
А ещё зачет за это автоматом ставить - это ни в какие ворота не лезет... Впрочем, если хотите, чтобы у нормальных студентов сложилось мнение "училка - полная дура" - то дерзайте...
PS. Пардон за резкость, насмотрелся на тупое самодурство преподавателей в своё время...
|
151 | Электра | 10/13/2001 12:20:52 PM | Салли --> (150) Убита насмерть! А то я уже таких городов нагородила на ровном месте, и все впустую! Надо эту задачку своим студентам предложить, и посмотреть, что получится.. Вот будет потеха! Хе-хе!!! А решившему- зачет автоматом!
|
150 | Салли | 9/25/2001 10:17:11 AM | Нет, позвольте)) есть причина - пуск ракеты, и есть результат - 2(3) самолета падают именно из-за ракеты. Стало быть сбиты)) Ну я же сказала, что задача-шутка. Уж очень мне этот факт понравился.
|
149 | Trianon | 9/24/2001 10:30:51 PM | Салли --> (148) "были сбиты" в таком случае звучит несколько натянуто. Максимум, потери от запуска одной ракеты составили 2 (3) фантома.
|
148 | Салли | 9/24/2001 6:20:34 PM | Trianon --> (147) «Фантомы» - это тяжелые истребители, которые могут использоваться и как бомбардировщики, на них американцы летают с 60-х. Истребители летают звеньями по два, втроем могут лететь бомбардировщик и два прикрывающих. Не невидимки)) Да ладно, напишу ответ. Моя шутка была скорее психологической задачкой: поскольку каждый американский пилот оценивет свою жизнь дороже кучи пилотируемого железа, то часто случалось так, что летчики катапультировались, едва завидев залп с земли и не дожидаясь результата. А самолетик-то потерян. Так «воинственность» штатов не раз помогала вьетнамским зенитчикам)) Самое забавное, что в случае с тремя «сбитыми» «фантомами», когда катапультировались все три пилота, ракета не попала ни в один самолет!)))))
|
147 | Trianon | 9/22/2001 3:10:47 PM | Салли --> (146)
Сдался. :)) Подскажи, хотя бы, что есть "фантом"?
|
146 | Салли | 9/18/2001 5:38:51 PM | Ну что ж, по заявкам гуманитариев – исключительно логическая задача, но с поправкой на неспокойное время)) Во время вьетнамской кампании американцы, как всегда, предпочитали ударять с воздуха. И хотя вьетнамцы попадали в них снизу ракетами не очень-то метко (не больше 80% попаданий), но они несколько раз умудрились сбить одной ракетой два самолета, и даже известен один феноменальный случай: одной ракетой были сбиты три «фантома» (а самолеты летают хоть и звеньями, но на вполне безопасном расстоянии друг от друга). Так как же, как же у вьетнамцев это получалось?
|
145 | ±MNNN Циничный Кот | 8/27/2001 2:35:33 PM | Роксана --> (143) Ну ж, гуманитарий, дерзайте, попаситесь... ;о))) Модератор не возражает, и мне тоже интересно.... :о)))
|
144 | Trianon | 8/27/2001 12:35:29 AM | Роксана --> (143) Таких ограничений тут никогда не было. Более того, любые проявления вне математики будут только приветствоваться. :))
|
143 | Роксана | 8/26/2001 10:57:02 PM | И это называется - логические задачи?!!! (простите гуманитария за негодование, но неужели тут могут пастись только математики?)
|
142 | Циник | 8/21/2001 7:24:30 PM | Trianon --> (141) Пардон, ошибся на один шаг, верно N(k)=2**(k+2)-3.
И еще: в (135) рекуррентная формула верна, а и вычисления - нет. При k=0 N(k)=1, k=1 N(k)=5 (1 распиленное, одна цепь из 1 целого звена и одна - из 3), k=2 N(k)=13 (к случаю k=1 добавляется 1 распиленное и цепь из 7 звеньев) и т.д...
|
141 | Trianon | 8/19/2001 2:32:13 AM | Циник --> (140) N(K)= 2**(k+1)-3 N(3)= 2**(3+1)-3 = 2**4-3 = 16-3 = 13 не 21, как у Салли, не 22, как у меня, а 13. чего-то я не понял...
|
140 | Циник | 8/17/2001 11:52:29 PM | Trianon --> (135) Рекуррентная формула верна. И ясно, откуда она взялась. Общая формула: N(k)=2**(k+1)-3, где N(k) - число дней, которое можно прожить с k распилами, а 2**(k+1) - 2 в степени k+1. формула доказывается элементарно по индукции.
|
139 | Салли | 8/16/2001 10:22:57 AM | Trianon --> (136) Я промоделировала до 7 распилов)) L = 3 * (2^K - 1) похоже на правду. ±MNNN Серый Ангел --> (132) Извините, а можно все-таки формулу в явном виде, чтобы в другое уравнение не залезать?
|
138 | ±MNNN Циничный Кот | 8/13/2001 2:28:03 PM | Trianon --> (136) Проверим... Попозже только - сейчас некогда... Но в течении недельки я думаю, ещё раз просмотрю... :о)
|
137 | Салли | 8/13/2001 2:00:50 PM | Так, я посмотрела - у меня неправильное решение, я там в самом начале ошиблась. А исходные уравнения "количество дней" - "количество распилов" можно проверить на практике. Если проверю - сообщу)))
|
136 | Trianon | 8/12/2001 11:30:40 PM | Прошу у всех прощения за возникшую паузу... думал дождаться еще ответов, но по почие пришел только один - опубликован предыдущим письмом.
Самое странное, что попытавшись решить задачу сам, я почему-то получил результат, не совпадающий ни с решением Салли, ни с решением ±MNNN....
У меня получилось, что если при К распилах можно прожить L то: L = 3 * (2^K - 1) и, соответственно, K = ceil(log2(D/3 + 1)), где 2^K - это 2 в степени K, log2(x) - двоичный логарифм x, равный ln x / ln 2 ceil(x) - округление вверх до ближайшего целого.
То есть: K | L --+--- 1 | 3 2 | 9 3 | 21 4 | 45 5 | 93 ну и т.д. :-))
А теперь мне самому интересно, кто же прав? :)
|
135 | Trianon | 8/12/2001 10:59:47 PM | Решение, присланное Салли 26.07.01 16:25:30 : ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Сколько можно прожить дней если можно сделать n распилов на цепи с одного конца: Опытным путем: для n=1 - 3 дня, для n=2 - 9 дней, для n=3 - 22 дня. Далее кол-во дней (Nn), прожитых при количестве распилов n можно определить как (Nn)=2*(Nn-1)+3, где (Nn-1) – количество дней, прожитых при n-1 распиле. То есть Nn я могу посчитать последовательно, начиная с n=3, но единая формула что-то не получается. А ее вообще можно вывести из этой закономерности?))
|
134 | ±MNNN Серый Ангел | 7/25/2001 2:14:07 AM | Trianon --> (133) Хде??? Ааа... Ну я так понял что там про 7 звеньев написано только... Сорри... Удали реплику просто... :о))) Щас ночь - мало кто читает... И эту - тоже... Потом восстановишь из удаленных... Мало кто туда полезет-то... ;о)
А цепи, да... Пилил... За скромные комисссионные... ;о))) Коты - они такие... Не жадные... А Ангелы - ваще альтруисты типа... ;о)))
|
133 | Trianon | 7/25/2001 2:07:52 AM | ±MNNN Серый Ангел --> (132)
Все ясно... Ангел недавно ездил на курорт, поиздержался, и был вынужден пилить там цепь. Экономно.
P.S. Кот! Ну для кого я ссылку на почту оставил? :-)
|
132 | ±MNNN Серый Ангел | 7/25/2001 1:50:01 AM | Trianon --> (126) РЕШЕНИЕ. Решение этой задачи - вариация использования двоичной системы счисления.
Основная схема решения Пусть имеется бесконечная цепь.
Допущения: Кол-во дней (длина цепи) L = 2^(k+1)-1 Кол-во разрезов - k
Очевидное решение: Разрезаем цепь длиной L на куски длиной 1,2,4,8,...,2^k звеньев. Каждый кусок - с распиленным звеном цепи на конце. Представляя число дней N (1<=N<=L) в двоичном виде (вроде 10101...010) и используя звенья в соответствии с наличием единичек в двоичном представлении N можно составить любую комбинацию длиной от 1 до L.
Идея оптимизации: использовать разрезанные куски для составления более коротких отрезков цепи - длиной в 1, 2, 3 и т.д. звена из только разрезанных кусков
Оптимизированное решение: Начинаем нарезку с самого длинного звена 2^(k), каждый раз откладывая распиленное звено в сторону. Задача - получить k кусков цепи длинами 2^k, 2^(k-1), ... , 2^3, 2^1, 2^0
Пусть m (m < k) кусков уже отрезано. Длина оставшейся цепи L0= L - (2^k + 2^(k-1) +...+2^m) - m
Тогда из распиленных кусков можно сложить куски цепи вида 1, 2, 4, ... 2^j, (1+2+..+2^j) <= m.
При каком-то значении m=M выполнится: L0 = 0 Что равносильно нахождению корня M уравнения:
(2^(k+1) - 1) - (2^k + 2^(k-1) +-...+ 2^m ) = m; (*)
Т.к. m<=k, то искомое М явялется минимальным числом разрезов, позволяющих составлять из обрезков цепи цепь любой длины. (если M-не целое, то ес-сно округляется до ближайшего большего целого. Физически это означает что один из кусков цепи будет состоять как из разрезанных, так и из неразрезанных звеньев)
Корень уравнения (*) в явном виде мне искать лениво, сорри... :о)
Схема почти без изменений распространяется и на любое заданное количество дней, отличных от L=(2^(k+1)-1). Требуется один дополнительный разрез. Общее число разрезов - (M+1).
Определение количества дней при заданном числе распилов. Обратная задача - про количество возможных дней при заданном числе распилов решается также с помощью уравнения (*). Только m теперь задано, k - является неизвестной, а корень k=K - необходимо определить. (ес-сно, с округлением теперь в меньшую сторону до целого). Количество дней равно L=2^(K+1) - 1.
============================= Всё просто. Проживем... ;о)
|
|
|