| sweet_peach_lover |
|
Форумы CasinoGames
|
|
Эту задачу привез знакомый из США. Некоторые крупные компании прибегают к нестандартным поискам талантливых сотрудников, например, программистов. На биллборд вывешиваются условия задачи и пишется, присылайте свое резюме вместе с решение туда-то.
Во свяком случае, так ему объяснили появление задачи на рекламном щите.
Задача:
Первый человек съедает целую пиццу за X часов. Второй человек за Y часов.
На сколько целых одинаковых кусков нужно разделить одну пиццу, чтобы последний кусок всегда забирал первый человек? Пиццу они начинают есть одновременно.
Резюме отсыласть никуда не нужно, но ваши ответы будет интересно посмотреть.
Примечание: очевидно, что ответ будет не 3,5 или 7 кусков, т.к. не известно, кто ест быстрее
|
|
|
|
| sweet_peach_lover |
|
Форумы CasinoGames
|
|
пиццу разрезать нужно под куском здесь понимается часть от целого.
пиццу целиком, вообще, не очень удобно есть, тем более вдвоем 
разрезаем как в пиццерии, чтобы куски получились одинаковые.
|
|
|
|
| sweet_peach_lover | пиццу разрезать нужно под куском здесь понимается часть от целого.
пиццу целиком, вообще, не очень удобно есть, тем более вдвоем 
разрезаем как в пиццерии, чтобы куски получились одинаковые. | вот блин:grin:
|
|
|
|
|
Задача имеет решение если X=Y?
|
|
|
| sweet_peach_lover |
|
Форумы CasinoGames
|
|
|
Предполагаем, что время X отлично от Y. Т.е. наши герои едят с разной скоростью.
|
|
|
|
Ну, например, если разрезать на X*Y кусков, то они закончат еду одновременно. Соответственно, если на X*Y+1, то кто-то из них таки съест последний кусок, но кто?
Есть такое понятие, как НОК (наименьшее общее кратное). Это оптимальней, чем резать на X*Y кусков.
|
|
|
|
Это все равно не корректно в случае X/Y or Y/X = целое число.
Если предположить, что приоритет первого человека, то решение:
2+X/Y округлен. до целого в бОльшую сторону.
|
|
|
|
ответ конкретное число? или уравнение какое- нить?
|
|
|
| sweet_peach_lover |
|
Форумы CasinoGames
|
|
Все корреткно.
Например, первый ест целую пиццу за 1 час, второй за 1/2 часа X/Y = 2, т.е. целое число.
Делим пиццу на 6 кусков, последний кусок съедает первый. Т.е. при X/Y = целому числу имеем решение задачи при заданных условиях.
Опять же, герои начинают есть одновременно. Приоритетов ни у кого нет.
Кто успел - тот и съел.
Понятно, что если первый взял последний кусок, то второй отбирать у него ничего не будет.
Ответ - уравнение, т.к. неизвестно с какой конкретной скоростью едят герои, и кто ест быстрее.
|
|
|
|
| sweet_peach_lover | Все корреткно.
Например, первый ест целую пиццу за 1 час, второй за 1/2 часа X/Y = 2, т.е. целое число.
Делим пиццу на 6 кусков, последний кусок съедает первый. Т.е. при X/Y = целому числу имеем решение задачи при заданных условиях.
Опять же, герои начинают есть одновременно. Приоритетов ни у кого нет.
Кто успел - тот и съел.
Понятно, что если первый взял последний кусок, то второй отбирать у него ничего не будет.
Ответ - уравнение, т.к. неизвестно с какой конкретной скоростью едят герои, и кто ест быстрее. | В условии: чтобы последний кусок всегда забирал первый человек
Пересчитай ещё раз свой пример. У тебя получится что 6ой т.е. последний кусок заберёт второй чел.
|
|
|
|
При твоих условиях:
2+X/Y округлен. до целого в бОльшую сторону=4
|
|
|
| sweet_peach_lover |
|
Форумы CasinoGames
|
|
2 alles, ты прав. в посте перепулал игроков, т.е. первый ест за 1/2 часа, второй за 1 час. соответственно первый герой достигнет последнего куска первым. здесь Y/X=2, т.е. целое число. Суть прежняя.
Это к тому что, задача корректна и решается 
Формула другая, n=2+X/Y (округление до целого в бОльшую) не подходит.
Например,
если X=1 час, Y= 1/2, n=2+2 => n=4
В данном случае герои подойдут к последнему куску одновременно.
Приоритетов ни у кого нет, нужно, чтобы последний кусок достался первому.
|
|
|
|
:mad:фигня задача.
Если X/Y целое число, то походить одновременно будут в любом случае.
|
|
|
|
вроде задача не имеет решения.
Допустим, решение =n кусков. Тогда можно задать соотношение X/Y >n -> пока первый ест 1й кусок, второй сьедает все остальные куски пиццы..
|
|
|
|
| sweet_peach_lover | 2 alles, ты прав. в посте перепулал игроков, т.е. первый ест за 1/2 часа, второй за 1 час. соответственно первый герой достигнет последнего куска первым. здесь Y/X=2, т.е. целое число. Суть прежняя.
Это к тому что, задача корректна и решается 
Формула другая, n=2+X/Y (округление до целого в бОльшую) не подходит.
Например,
если X=1 час, Y= 1/2, n=2+2 => n=4
В данном случае герои подойдут к последнему куску одновременно.
Приоритетов ни у кого нет, нужно, чтобы последний кусок достался первому. | Все сдались<img src="http://forum.cgm.ru/images/smilies/icon_razz.gif" border="0" alt="" title="Язычок" class="inlineimg" />.
Давай свою формулу!
|
|
|
|
Ещё не все, я вот только что сел думать
|
|
|
|
Попробую рассуждать вслух.
Имеем: первый ест за X часов, второй - за Y. Делим на n кусков.
Очевидно, что первый должен съесть первый кусок быстрее, чем второй съест n - 2 куска. Тогда второй кусок первого едока окажется последним куском вообще.
Первый ест один кусок за X / n, второй - за Y / n. Т.е. чтобы условие задачи выполнялось X / n должно быть меньше, чем (Y / n) * (n - 2). Упростим неравенство.
X / n < (Y / n) * (n - 2)
X / n < (Y * n - Y * 2) / n
n заведомо целое и положительное, если только задача имеет ответ.
X < y * n - 2 * Y
X + 2 * Y < Y * n
Y * n > X + 2 * Y
n > (X + 2 * Y) / Y
Ответ: наименьшее целое число, большее, чем (X + 2Y) / Y
Где ошибся?
|
|
|
|
| alles | | 2+X/Y округлен. до целого в бОльшую сторону | (X + 2Y) / Y = 2+X/Y
говорит, что не правильно:roll:
|
|
|
|
Если первый есть быстрее второго то 3
Если наоборот то округдение в большую сторону ( (X/Y) +2 )
о
почти что сказал верхний
2 + ( Округление вверх до целого (X/Y) )
|
|
|