Публикуем правильные и интересные ответы на задачи Выпуска. Возможно, кого-то не упомянул. С задачами 7 и 8 не справился никто.
1) Соловей-разбойник, известный хулиган из Голосеевского леса, что под стольным градом Киевом со стороны чумацкого шляха, резко встал на путь исправления и, надумав поступить в музыканты, притащил в лес рояль. Но дело не заладилось и Соловей обратился за помощью к Варваре-Красе Длинной Косе, большой мастерице, искусствам обученной, на многих инструментах играющей, слух услаждающих...
"Скажи, мол, подруга, как так получается, вроде и талант у меня, и грамоте музыкальной я обучен, и слух абсолютный, и песню любую могу спеть просвистеть... А как за какой инструмент сажусь, хоть за рояль, и ведь учили меня когда-то, а пальцы не слушаются, в ноты не попадаю, не чувствую, какую клавишу жать, фальшиво получается, перед кикиморами, упырями и вурдалаками стыдно - хохочут, бояться перестали..."
Что могла бы ответить окончившая консерваторию по классу фортепиано Варвара, ныне преподающая малолеткам в музыкальной школе? В чем заблуждается Соловей? И можно ли научить старика прилично музицировать на клавишных? Какой инструмент вместо клавишных посоветуете или пусть его художественно свистит?
Совет дает Такскать: "Если у Соловья действительно абсолютный слух, то он быстро выучит, как звучат все клавиши, и станет играть, попадая в ноты, и даже научится играть "вкусно" - именно практику и должна была бы посоветовать ему Варвара."
2) От коллег SergeyVBNM и dantist1
Верно ли, что через любые 4 точки в плоскости, которые не лежат на одной прямой можно провести линии и получить треугольник?
Решение дал dantist1. а также ctrl_points, (casper_nn, picozoid, TenOClock, Дмитрий0472, Радионеслушатель, Txip, ОПВ, гоkorvintorson: Через любые 4 точки можно провести линии до пересечений и получить треугольник, если точки образуют выпуклый четырехугольник. Вот картинка, например, для точек-вершин прямоугольника:
3) В деревне Простоквашино 2/3 женщин замужем и 3/5 мужчин женаты. Это сколько процентов населения деревни в браке состоит? Все замужем/женаты только на жителях Простоквашино.
Правильный ответ 12/19: Kuzmi4 , Райвен, Радионеслушатель, Superius
4) Какой металл встречается в природе реже, чем платина или уран, но до последнего времени был почти в каждом доме?
Правильные ответы: Замполит, ртуть, CCAPMX Hg, W, Дмитрий0472, Радионеслушатель, Rashad_rus
5) Молодожены Паша и Даша весело решают, что же им купить на первую пашину зарплату - Паша хочет компъютер, а Даша хочет холодильник. Есть пять шкатулок в ряд (перенумерованы, 1.2.3.4.5). В одну из них Паша положил деньги. Даша открывает любую. Если из 6 попыток Даша угадает, в какой деньги, то холодильник. Не угадает - Паша купит новый комп.
Главное условие задачи: после каждой (неудачной) попытки Даша выходит из комнаты, а Паша обязательно перепрятывает заначку в соседнюю шкатулку слева или справа. Может ли умная Даша, крепко подумав, гарантировать покупку холодильника, не более, чем за 6 попыток? (При неудачном угадывании Даша НЕ видит, в какой шкатулке были деньги", Паша НЕ сообщает)
Очень ясный/прозрачный/красивый ответ дал andervish: Открывая шкатулки по алгоритму 234234 или 234432 (или по симметричному алгоритму) Даша гарантированно на некотором ходу заберет деньги. Рассмотрим 234234:
Если деньги в самом начале находятся в чётной шкатулке, и не обнаружены на первом ходу, то они в шкатулке номер 4. Оттуда они перейдут в шкатулки 3 или 5. Если деньги не обнаружены на втором ходу, то в шкатулке 5. Отсюда они могут перейти только в шкатулку 4, где и будут обнаружены Дашей на третьем ходу.
Если за три хода деньги не были обнаружены, то они вначале находилась в нечётной шкатулке. После трёх ходов они оказываются в чётной норке. Поэтому повторив ходы 234 Даша гарантировано заберет деньги.
Правильные ответы от casper_nn, Olejon, korvintorson, Антон_8X
6) Задача от Антон_8X : Есть некоторое количество вагонов, сцепленных друг с другом в кольцо. Из каждого вагона можно перемещаться в оба соседних. В каждом вагоне есть источник света и выключатель для него. В начальный момент времени мы находимся в одном из вагонов, при этом не знаем, включен или выключен свет в других вагонах. Нам нужно определить количество вагонов в этом "кольце". Для этого мы можем ходить по вагонам и включать/выключать в них свет. Мы можем видеть, включен или выключен свет только в том вагоне, в котором сейчас находимся. У вагонов нет окон, до лампочек нам не дотянуться, лампочки вечные и т.п. - в общем, нужно подсчитать количество вагонов, перемещаясь по составу и манипулируя выключателями. Количество вагонов может быть сколь угодно большим или малым, времени у нас много, нужен универсальный алгоритм.
Стрелять по лампам нельзя, эксперимент проводит один человек, можно вести запись 0/1, в вагонах кроме экспериментатора нет никого, кто мог бы тайком включить/выключить свет.
Количество вагонов N может быть любым, от единицы до сколь угодно большого числа. Вагоны должен пересчитать проводник.
Вагон - абстракция, поэтому следует считать, что если число вагонов =1, то выйдя в одну дверь вагона, проводник входит в его вторую дверь. Такой себе вагон-кольцо.
Понятно, что 2 вагона соединены так, что выход в любую дверь из первого вагона приводит проводника во второй, а из второго вагона в любую дверь в первый.
Проводник входит в вагон номер 1 и для пересчета двигается против часовой стрелки, переходя из вагона в вагон через правую дверь, а возвращается через левую дверь вагонов по часовой стрелке. Последний вагон находится сразу слева от первого. Далее подробно:
Шаг I=0
Проводник в вагоне номер 2**I (=1), зажигает свет в вагоне номер 2**I, выходит в правую дверь в вагон 2**I+1, гасит свет в вагоне номер 2**I+1, возвращается в первый вагон и проверяет наличие света.
Два варианта 1) свет в первом вагоне горит, следовательно последний вагон не был достигнут, 2) свет НЕ горит, следовательно последний вагон был достигнут, N=1.
Каждый следующий шаг осуществляется при условии, что на предыдущем шаге последний вагон не был достигнут.
Шаг I=1
Проводник зажигает свет во всех вагонах с номерами от 1 до 2**I(=2), выходит в правую дверь в вагон 2**I+1(=3) и далее, гасит свет в вагонах с номерами от 2**I+1(=3) до 2*2**I(=4), возвращается в первый вагон и проверяет наличие света.
Два варианта 1) свет в первом вагоне горит, следовательно последний вагон не был достигнут, 2) свет НЕ горит, следовательно последний вагон был достигнут.Следующий шаг осуществляется при условии, что на предыдущем шаге последний вагон не был достигнут
Шаг I=2
Проводник зажигает свет в вагонах с номерами от 1 до 2**I(=4), выходит в правую дверь в вагон 2**I+1(=5) и далее, гасит свет в вагонах с номерами от 2**I+1(=5) до 2*2**I(=8), возвращается в первый вагон и проверяет наличие света.
Два варианта 1) свет горит, следовательно последний вагон не был достигнут, 2) свет НЕ горит, следовательно последний вагон был достигнут.
...
Шаг I=i - конечный
Проводник зажигает свет в вагонах с номерами от 1 до 2**i, выходит в правую дверь в вагон 2**i+1 и далее, гасит свет в вагонах с номерами от 2**i+1 до 2*2**I, возвращается в первый вагон и проверяет наличие света.Два Один варианта 1) свет горит, следовательно последний вагон не был достигнут, 2) свет НЕ горит в первых L вагонах, следовательно последний вагон был достигнут, N=2*2**I-L
Интересно обсуждали KaCMaHaBT, ctrl_points, Gray, _Soulcatcher_, casper_nn, korvintorson,
7) Разделить произвольный отрезок, соединяющий две точки, на две равные части с помощью засечки "математического" циркуля - ничего не измеряет, только фиксирует расстояния, одна ножка с иголкой, другая с тонким грифелем. Кроме циркуля ничего нет, только две точки. Когда получите решение, то окажется, что и отрезок проводили напрасно... Ответа никто не дал
8) "Глупая" задача: 111 222 111 ABC IJK XYZ ... - продлите последовательность 111 222 111 и скажите, что это такое. Рекомендуется цифры проговаривать вслух (типа: one one one two two two )))... Ответа никто не дал
9) "Ты в тупике? Не стой на месте. Иди, ???????" - закончите фразу.
Ответ дал Такскать: Иди , ищи другие тупики)
Комментарии
5) откр2 нет? откр2нет?=>1 и2 пуста; так же с 3 и 4 покупаем холодос)))
к 2. Да, можно, бесконечное количество треугольников. Через любые две точки на плоскости можно провести только одну линию, а через оставшиеся две - бесконечное количество прямых, непараллельных и непересекающихся в какой-либо точке первой линии, на которых и будут располагаться стороны треугольника.
Не. Пример - три точки и между ними четвертая. Треугольник не получится.
В задаче ничего не сказано, что точки должны находиться на сторонах образовавшегося треугольника, а говорится только о линиях, проходящих через них и образующих треугольник...
Хотя да, верно говорите, три точки на одной прямой, а четвёртая вне, соответствует условию задачи и может быть построен только один треугольник.
Имел в виду такой пример: спроецируйте на плоскость трехгранную пирамиду, получите на плоскости 4 точки , через которые не провести один треугольник.
Элементарно, Ватсон! Этот случай возможен при создании треугольника с точками нерасположенными на его стенках, но линии проведённые через них образуют треугольник на площади за местом расположения одной или даже двух точек.
Условие задачи позволяет двойную трактовку. Если мы трактуем "построить треугольник такой, чтобы все четыре точки лежали на его сторонах или были вершинами" то нельзя. Контрпример а-б-в треугольник и точка г внутри него. Если просто "построить треугольник, стороны которого будут лежать на прямых проходящих через точки" то можно.
2) Чтобы построить треугольник, нужны 3 точки не на одной прямой. Возьмем любые 2 из данных - A и B. Если C - не на прямой AB, то строим ABC. В противном случае (C - на AB), D - не на AB (иначе все 4 - на AB, что противоречит условию). Поэтому строим ABD.
3) 12/19
5)
ВОПРОС: ...?2 2 4 2 3 4, или еще 3 аналогичных варианта5) Конечно, "При неудачном угадывании Даша НЕ видит, в какой шкатулке были деньги", Паша НЕ сообщает
Спасибо, действительно, все сильно проще)
2 точки (скажем А и В) всегда дадут единственную прямую. Каждая добавленная точка дает возможность провести как две прямых к первым точкам (что традиционно заложено в аксиомах геометрии) так и только одну к любой произвольной А или В. Что дает нам две пересекающиеся прямые и угол между ними А или В. 4 точка дает нам еще одну прямую, не параллельную ни одной из уже существующих. И поскольку у нас есть три не параллельных прямых, мы завсегда получим из них треугольник.
Вообще для (7) есть дедовское решение, знакомое всем, кто чертил ручками на коленке без миллиметровки а не только в автокаде. Чертим из любой точки окружность радиусом АВ. Подгоняем козью ногу таким образом, чтобы делая метки по длине окружности она укладывалась в нее 12 раз и мы получаем вполне годное практическое (приблизительное) решение.
Сейчас коллега дала задачу для сына..учебник 5 класса..не могу решить..не понимаю подвох.. Условие задачи (могу даж скрин сделать)
Тетя Груша продает кабачки
3 шт - 5руб
4шт - 6руб
5шт - 7 руб
Ни в каком другом количестве она не продает. Вчера она продала 100 шт и выручила 100$ сколько продаж совершила тетя Груша.(уточнить задачу не могу. 5 класс. Условие дословно "как есть")
...Вчера она продала 100 шт и выручила 100$ ...
А какой курс доллара установил школьный
банкиручитель?Уточните условие, строго сформулируйте, будьте уверены, что нет ошибки - то доллары, а то рубли... И присылайте в приват. Разместим для всех в следующем Выпуске
N1*3+N2*4+N3*5=100
N1*5+N2*6+N3*7=100
???
Если доллары заменить на рубли, то система уже несовместна. Таки да.Нужен курс)))
У вас в первом ряду N - штуки, а во втором N - рубли. Нужна другая переменная
ненене. 100 рублей 100 штук
Неправильно составлена задача, однозначно. В любом случае один кабачок стоит дороже одного рубля (5/3, 6/4, 7/5). Так шта 100 кабачков будут стоить больше 100 рублей. Но в советские времена, как мне помнится, курс доллара бывал в районе 0р62к. Так что, важен курс школьного доллара или на каком уроке поставлена задача. А может в этой школе ведётся преподавание логики?
не спорю.. дети как-то решили.. но - мое недоумение точно по той же причине.. 100$ это 100 рублей..пересмотрел.. но.. как - цена же больше 1руб за шт при любых..
7 - я бы провел окружности из обеих точек с радиусом, равным расстоянию между точками, а через точки пересечения окружностей (без всякой линейки, тем же самым циркулем) провел бы прямую, которая и разделит отрезок пополам. Или тут какая-то дополнительная хитрость есть?
(8) у кого-то старый кнопочный телефон лежит в кармане с разблокированной клавиатурой
6. В начальном вагоне выключить свет. Выбрать направление и двигаться по нему, включая свет в каждом вагоне. После каждого вагона возвращаться в начальный вагон (для этого запоминать количество пройденных вагонов) и проверять. Если там свет окажется включенным, значит круг пройден.
UPD. Можно оптимизировать алгоритм: возвращаться не каждый раз, а только после включения света (не возвращаться из вагонов, где свет и до нас горел).
Если вы знаете какой начальный подсчитать просто. Задача сводится к нахождению точки отсчета
Условие задачи:
Задача не может сводиться к нахождению того, что уже задано в условии.
Один из вагонов - это любой. Чтобы подсчитать вагоны нужна точка отсчета, она же - конец отсчета поскольку они зациклены.Как вы определите, что вернулись именно к тому, с которого начали?
Начальный вагон "помечен" выключенным светом. Когда я удаляюсь от начального вагона, я считаю вагоны, так что всегда знаю, на сколько вагонов нужно вернуться, чтобы попасть в начальный. Если при очередном возвращении я обнаружу в нем включенный свет, значит, я уже заходил в начальный вагон с другого конца.
2. Задача нуждается в уточнении. Добавим следующие предположения:
1) Под линиями подразумеваются прямые, а не отрезки.
2) Каждая прямая должна проходить минимум через 2 точки. Иначе нет смысла в условии, что точки не лежат на одной прямой.
3) Прямых должно быть не более трех.
Тогда ответ - нет. Невозможно построить треугольник в случае, если точки являются углами параллелограмма.
2) Можно кроме случая точки вершины прямоугольника.
и в этом случае можно. треугольник прямоугольный будет. изначально в задаче точки в углах воображаемого квадрата и располагаются. а в решении одна точка в вершине прямого угла, которая по диагонали - на гипотенузе. оставшиеся точки тоже не в вершинах треугольника, а где-то на катетах.
получите треугольник на точках в вершинах прямоугольника/квадрата:
Если уж формально подходить к условиям задачи, то кроме того что линии должны проходить через две заданные точки, там ещё не сказано что линии должны принадлежать плоскости, что должны быть задействованы все точки...
Вот треугольник образованный тремя линиями проходящими через точки, лежащими на одной прямой.
5. Вариант 2-3-4-4-3-2 или симметричный.
С вагонами просто - выключить свет везде, проверяя лампочки. Где будет теплая, негорящая - там были. Теперь идем и включаем свет и считаем вагоны
Вы не знаете, сколько вагонов. Может, их 100500 и лампочка успеет полностью остыть.
Коллеги. Перечитайте условие Задачи. Вы не можете проверить температуру лампочки, никакой, никогда
Тем более. Впрочем, я уже дал правильный ответ выше.
сходить назад и отрубить свет у 3-4 вагонов.
вернуться и дальше делать такой паттерн 1010010001000010000010000001.... если есть бумажка - ведем запись
встречая выключенный свет - считать сколько подряд.
когда наткнулись на этот паттерн, глянули на записи, подсчитали.
если бумажки нет - сзади у нас куча выключенных вагонов, так что начинаем считать, включая свет подряд. как только после длинной череды выключенных подряд будет включенный - стоп. на всякий проверяем вперед, что там постоянно включенные.
==вариант два
лампочку может и не проверим, но одежду положить же можем? как метку.
==вариант три
не можем? голые? писаем!
==вариант четыре
голодные и жажда мучит - метку поставить не можем?
кусаем себя до крови, пачкаем кровью стекло на двери
с удовольствие посмотрю на то, как вы 100500 вагонов туда-сюда ходите и считате.... ))))
Судя по этому комменту и по вашему комменту выше, до вас не доходит, что задача - абстрактно-логическая. Вагоны - это метафора, понятная большинству. Для программистов это мог быть просто замкнутый двусвязный список из булевых переменных.
Коллеги, я решил задачу и вывесил ответ. Загляните в начало Выпуска. И да, приносите задачи для нового
Если честно не понял решение про вагоны и не понял почему не будет работать моё - выключить свет в первом вагоне, а потом повторять шаг разведки:
1. Идти (например всегда вправо) и искать первый по счету выключенный свет.
2. Включить его и вернуться налево в первый вагон. Если в первом вагоне свет теперь горит значит мы прошли круг туда и обратно. Иначе повторяем п.1.
Где тут ошибка?
2) А я не вижу у Вас ошибки, если я его правильно понимаю, просто оно не экономное.Представьте себе, что в первом вагоне свет был, а во всех остальных он заблаговременно выключен. Значит за каждый шаг, за каждую итерацию на конечность Вы проверяете только ОДИН новый вагон. "Замучаетась пыль глотать"(с). В моем алгоритме движение идет с ускорением, каждый следующих ход в два раза больше вагонов проверяет
на вшивостьна "конечность". Я даже могу пролететь на L вагонов, что поддается прямому счету во время обратного хода к первому вагону. Мой - экономней)))1) первое отличие моего подхода от Вашего в том, что в первом вагоне/первой половине вагонов за один ход я свет включаю (во второй половине выключаю), а возвращаюсь для проверки на выключенность (добавлю в пост, что договориться с проводником можно и так и так)))).
У Вас, и не только у Вас, наоборот. Вы свет выключаете, а для фиксации последнего вагона его последовательно включаете. Это симметричные подход.
Подсчитайте, за сколько пар пробегов туда-сюда мой проводник пересчитает 1023 вагона)))
За 10 пар пробегов
Ок, алгоритм вроде понял, красиво. Получается логарифмическая трудоемкость что-ли, против моей квадратичной. Но зато у вас проводник чаще выключателями щелкает! Да и в задаче условие найти работающий алгоритм, а не найти алгоритм, оптимальный по перемещению проводника. Я негодую! ))))
хотя не логарифмическая, скорее порядка N*lg(N)
наглядный пример термина "профессиональная деформация" ))))
все задачи - абстрактно-логические по своей сути. отличаются они лишь границей абстракции.
вот если бы задача стояла так "найдите число ячеек бинарной памяти в циклически замкнутом стеке, уже заполненным случайными данными" я бы думал как программист. а задача была про проводника и вагоны. и решается она по-разному. вы, как я вижу, просто не способны смотреть на мир иначе как через призму программирования. отсюда и проф.деформация.
Замечание по решению задачи 2. Если точки образуют невыпуклый 4-угольник, то треугольник построить можно.
8 - звуки мотоцикла - 111 222 111 ABC IJK XYZ ШМЯК
Страницы