Про кольцевой поезд

Логические задачи

Модераторы: Азарапетыч, Администрация

Аватара пользователя
Плавающая Точка
Популярный автор
Популярный автор
Сообщения: 2743
Зарегистрирован: 04 мар 2005, 18:40
Пол: Женский
Откуда: Москва

Сообщение Плавающая Точка »

Если без разницы, сколько кругов по этому поезду нарезать можно, тогда, наверное, так:
- идти, включая все выключенные лампочки
- когда покажется, что все лампочки включены (ну, очень долго нет выключенных), выключить одну лампочку и идти считать вагоны до выключенной
- если поезд ну ооооочень длинный, то для контроля, просчитав количество вагонов до выключенной лампочки, можно ее включить и выключить лампочку в следующем вагоне и идти опять считать. Если количество вагонов совпало, то это оно и есть. Если нет, то опять включить все лампочки и ходить в поисках выключенной вдвое, скажем, дольше, чем в первый раз. Потом повторить процедуру.

Чива Ротсен
Ультраантипатриот
Ультраантипатриот
Сообщения: 8895
Зарегистрирован: 29 сен 2003, 14:48
Пол: Мужской
Откуда: СПб
Контактная информация:

Сообщение Чива Ротсен »

Плавающая Точка:

Решение не верное

Аватара пользователя
Илаис
Графоман со стажем
Графоман со стажем
Сообщения: 936
Зарегистрирован: 02 мар 2006, 19:52
Пол: Женский

Сообщение Илаис »

freddy писал(а):У Илаис тоже вариант. Я такое в другой задачке слышал. Не помню в какой.
Теперь осталось выяснить, какой из вариантов более оптимален :)
Для очень длинного поезда процесс можно оптимизировать (только нужно знать ограничение длины снизу) :

[size=0]Бегаем вправо-влево, каждый раз увеличивая дистанцию не на 1 вагон, а в два раза. Или в три раза, или в 1000000 раз (зависит от длины поезда). Как только обнаруживаем, что первая лампочка погасла, включаем её и делаем ещё один контрольный обход, чтобы подсчитать точное число вагонов.
Формально, думаю, влево далеко бегшать не обязательно - достаточно бегать вправо, четко возвращаясь до стартового вагона.

Фредин вариант для очень большого поезда лучше даже видоизменить, задав более сложный римт-комбинацию на стартовых вагонах - таким образом, придется возвращаться значительно реже - только, когда встретится такой же ритм - мы его меняем и, возвращаясь, проверяем - изменился ли стартовый ритм. Если изменился, то мы нашли хвост-начало, остался прежним - чтож, пилим дальше.[/size]
Последний раз редактировалось Илаис 25 апр 2006, 18:10, всего редактировалось 2 раза.

Аватара пользователя
freddy
Администратор
Администратор
Сообщения: 13569
Зарегистрирован: 27 авг 2003, 13:56
Пол: Мужской
Откуда: Санкт-Петербург
Контактная информация:

Сообщение freddy »

Похоже, что мой метод оптимальнее в том случае, если исходно включено мало лампочек.

Аватара пользователя
Яша
Графоман со стажем
Графоман со стажем
Сообщения: 791
Зарегистрирован: 02 янв 2006, 20:10
Пол: Мужской
Откуда: Израиль
Контактная информация:

Сообщение Яша »

[size=0]1. От исходной точки идем 1 вагон направо и включаем лампочку, возвращаемся, идем 1 вагон налево и выключаем, возвращаемся к исходной точке.
2. Идем опять направо
а) если лампочка не горит, то вагонов 2.
б) если горит то идем в следующий вагон, включаем ивозвращаемся к началу.
3. Идем налево.
а) если первая лампочка горит, то вагонов 3
б) переходим в следующий вагон, гасим, возвращаемся к началу и т.д.
[/size]
Лень инженера - двигатель прогресса

Аватара пользователя
Филь
Популярный автор
Популярный автор
Сообщения: 3179
Зарегистрирован: 18 янв 2005, 17:09
Пол: Женский
Откуда: Москва
Контактная информация:

Re: Про кольцевой поезд

Сообщение Филь »

Выбираем вагон номер раз. Гасим (если горит) лампочку. Идём направо, зажигаем (если не горит) там лампочку и считаем –«два». Идём обратно, проходим вагон номер раз, в следующем вагоне гасим (если ещё не погашена) лампочку и считаем «три». Возвращаемся к вагону «два», в следующем вагоне зажигаем лампочку и считаем «четыре». И так далее продолжаем ходить туда-сюда. Когда в какой-нть момент мы досчитаем до k и на пути к предполагаемому вагону k+1 обнаружим, что лампочка в вагоне k-1 находится в «неправильном» состоянии, значит мы наконец прошлись по всему поезду, и число вагонов как раз k-1.
Перепады настроения составляют важную часть женского шарма.

Аватара пользователя
Tulius
Популярный автор
Популярный автор
Сообщения: 4296
Зарегистрирован: 16 янв 2005, 16:05
Пол: Женский
Откуда: Санкт-Петербург
Контактная информация:

Сообщение Tulius »

Предлагаю воспользоваться методом Ариадны.
Собрать нить (допустим, из распущенного свитера) и потом протянуть ее несколько раз вдоль вагона с припуском на тамбур :). Сколько раз нить протянется, столько и вагонов.

Накрайняк можно заняться вычислениями в тамбуре. Сначала вычислить угол, который образуют стенки соседних вагонов, а потом и длину поезда. Это уже задача для геометров. Здесь, кстати, не обязательно имень какой-то измерительный прибор типа угольника, циркуля или линейки. Можно использовать любую произвольную меру длины - например, длину ботинка.

Чива Ротсен
Ультраантипатриот
Ультраантипатриот
Сообщения: 8895
Зарегистрирован: 29 сен 2003, 14:48
Пол: Мужской
Откуда: СПб
Контактная информация:

Сообщение Чива Ротсен »

Этот ответ можно было и не скрывать маленькими буковками :)

Аватара пользователя
Tulius
Популярный автор
Популярный автор
Сообщения: 4296
Зарегистрирован: 16 янв 2005, 16:05
Пол: Женский
Откуда: Санкт-Петербург
Контактная информация:

Сообщение Tulius »

А что, Чива, все уже так ответили?
Народ скрывает, я и не читаю.

Аватара пользователя
Tulius
Популярный автор
Популярный автор
Сообщения: 4296
Зарегистрирован: 16 янв 2005, 16:05
Пол: Женский
Откуда: Санкт-Петербург
Контактная информация:

Сообщение Tulius »

Ах да, в условии еще про лампочки было. Прошу прощение за невнимательность. :)

Аватара пользователя
Илаис
Графоман со стажем
Графоман со стажем
Сообщения: 936
Зарегистрирован: 02 мар 2006, 19:52
Пол: Женский

Сообщение Илаис »

Wesha, тут как-то принято маскировать ответы, чтобы не портить возможности подумать тем, кто хочет самостоятельно подумать...

хм... жаль, не скопировала себе куда-нить ответ - ибо была парочка вопросов по "решению"...

Аватара пользователя
Оса
Белинский по натуре
Белинский по натуре
Сообщения: 47
Зарегистрирован: 29 апр 2006, 10:19
Пол: Женский
Откуда: Пинск, Беларусь

Сообщение Оса »

Выключаем свет в исходном вагоне. Идем в следующий вагон (первый), включаем свет, возвращаемся в исходный выгон с выключенным светом. Опять идем в сторону вагона с включенной лампочкой и включаем свет во втором вагоне, возвращаемся в исходный. И т.д. 2,3,4 … Приходим в вагон N, включаем лампочку, возвращаемся в исходный вагон. Видим, что лампочка включена, следовательно в нашем поезде N вагонов.
Последний раз редактировалось Оса 01 май 2006, 14:06, всего редактировалось 2 раза.

Аватара пользователя
Оса
Белинский по натуре
Белинский по натуре
Сообщения: 47
Зарегистрирован: 29 апр 2006, 10:19
Пол: Женский
Откуда: Пинск, Беларусь

Сообщение Оса »

Простите, выбирала маленький шрифт, а он вышел огромный, ступила...

Аватара пользователя
Илаис
Графоман со стажем
Графоман со стажем
Сообщения: 936
Зарегистрирован: 02 мар 2006, 19:52
Пол: Женский

Сообщение Илаис »

Оса, есть возможность редактировать свои сообщения :wink:

Аватара пользователя
Оса
Белинский по натуре
Белинский по натуре
Сообщения: 47
Зарегистрирован: 29 апр 2006, 10:19
Пол: Женский
Откуда: Пинск, Беларусь

Сообщение Оса »

Точно, спасибо, открыли глаза.

Ответить

Вернуться в «Задачки»