forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Загадки (http://forum.boolean.name/forumdisplay.php?f=87)
-   -   Возраст сыновей (http://forum.boolean.name/showthread.php?t=2721)

ZanoZa 16.02.2007 20:19

Возраст сыновей
 
Загадко:

Встречаются два приятеля в парке
-Привет!
-Привет!
-Как дела?
-Хорошо! Растут 2 сына, дошкольника.(от 1 до 6)
-А сколько им лет?
-Произведение их возрастов равно числу голубей около этой скамейки.
-Этой информации мне недостаточно.
-Старший похож на мать.
-Вот теперь я знаю их возраст!

так какой же возраст?

alcoSHoLiK 16.02.2007 21:38

Re: Возраст сыновей
 
4 и 1.

impersonalis 17.02.2007 13:33

Re: Возраст сыновей
 
Где логика?
Из задачи только понял, что возраст каждого [1..6], и возрасты разные.

alcoSHoLiK 17.02.2007 14:57

Re: Возраст сыновей
 
Дядька посмотрел на количество голубей. Ему этой инфы было недостаточно, значит голубей было такое число, которое можно получить путем умножения разных комбинаций множителей. После того, как дядька узнал, что один сын старший (т.е. они не ровесники), он сразу догадался о возрасте.
В данном возрастном диапазоне только число 4 может быть выражено неоднозначно: 2 * 2 и 4 * 1.

ZanoZa 17.02.2007 23:53

Re: Возраст сыновей
 
я всё думал что ещё чё-нить кто-нить скажет :)
Да, правильный ответ 4 и1

impersonalis 21.04.2010 12:49

Ответ: Re: Возраст сыновей
 
Хотелось бы чуть-чуть добавить alcoSHoLiK-а (хотя он скзаал всё безукоризненно и корректно), на правах выдумывания сложной теории из ничего:
Цитата:

Сообщение от alcoSHoLiK (Сообщение 32351)
... число, которое можно получить путем умножения разных комбинаций множителей. ...

Вернее будет сказать даже так: из условий задачи - противоречие (неодназначность точнее) разрешил факт неравенства возрастов - становися ясно, что среди всех возможных разложений только одно состоит из неравных друг-другу множителей (иначе бы этой информации не было достаточно, например: число 16=4*4=2*8=1*16). Если вариант разложения на неравные множители один, то оставшиеся (а, выходит, единственный) - разложение на равные множители.
Т.о. число голубей N, такое, что:
N=q^2=w*a, где w!=a.
Казалось бы что это даёт? А вот что:
1) ускорение алгоритма перебора
2) можно увеличить диапазон поиска без потери верного решения.
Действительно: нужно прогнать некую переменную по значаениям от 2 (значения менее 2 - т.е. 0 и 1 сразу можно выкинуть, т.к. 0 - вообще сингулярный случай, а 1 - очевидно раскладывается только на 1*1 - не подходят) до значения [округление_в_меньшую_сторону(sqr(6))]=2.
Т.е. в данной формулировке задачи, необходимо перебрать числа от 2 до 2. Т.е. всего одно число и убедиться, что его квадарат раслкадывается на неравные множители единственным образом. Действительно: 2^2=4=4*1.
На самом деле подходящих решений нет вплоть до 9 (не включая):
3^2=9=9*1 - для поиска этого числа, нужно выполнить всего одну итерацию предложенного алгоритма.
Замечу также, что следующий квадрат (16) не удовлетворяет условию.

ZanoZa 21.04.2010 15:43

Ответ: Возраст сыновей
 
Импер, ты злодей. Я две минуты пытался понять, почему w!=a, после чего понял что это "не равно", а не "факториал"


Часовой пояс GMT +4, время: 22:43.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot