задачка про огурцы
Jul. 12th, 2016 01:30 pmРассказали отличную задачку с очень простым условием. Вроде раньше не сталкивался с ней.
Каждый день в течение 28 дней вы съедаете не менее одного огурца, иногда больше. Всего за 28 дней вы съели ровно 42 огурца. Доказать, что из этих 28 дней можно выбрать промежуток из скольких-то дней, идущих подряд, за которые вы съели ровно 13 огурцов.
Рассказавший мне эту задачу приятель добавил также, что "есть простое решение, которое можно придумать и объяснить, ничего не записывая на бумаге".
Каждый день в течение 28 дней вы съедаете не менее одного огурца, иногда больше. Всего за 28 дней вы съели ровно 42 огурца. Доказать, что из этих 28 дней можно выбрать промежуток из скольких-то дней, идущих подряд, за которые вы съели ровно 13 огурцов.
Рассказавший мне эту задачу приятель добавил также, что "есть простое решение, которое можно придумать и объяснить, ничего не записывая на бумаге".
no subject
Date: 2016-07-12 10:34 am (UTC)no subject
Date: 2016-07-12 10:39 am (UTC)no subject
Date: 2016-07-12 10:35 am (UTC)no subject
Date: 2016-07-12 10:40 am (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2016-07-12 10:41 am (UTC)no subject
Date: 2016-07-12 10:42 am (UTC)(no subject)
From:(no subject)
From:no subject
Date: 2016-07-12 10:48 am (UTC)no subject
Date: 2016-07-12 10:48 am (UTC)no subject
Date: 2016-07-12 10:57 am (UTC)no subject
Date: 2016-07-12 11:04 am (UTC)Вот такое мое не строгое доказательство.
Конечно в идеале бы нужно предположить, что существует такой ряд из 28 чисел, которые бы дали бы в сумме 42 и на котором бы не возможно было бы выделить субряд, который давал бы в сумме 13, потом найти противоречия... Но то не ко мне, наверно, а к какому-нибудь Гаусу или Фурье.
no subject
Date: 2016-07-12 11:28 am (UTC)Оставшимися огурцами мы можем "испортить" только 14 таких промежутков (42 - 28 = 14 оставшихся у нас огурцов).
Это значит, что промежутков с 13 огурцами всегда будет как минимум два.
no subject
Date: 2016-07-12 11:33 am (UTC)как правило, один "дополнительный" огурец испортит сразу несколько промежутков
(no subject)
From:(no subject)
From:no subject
Date: 2016-07-12 11:47 am (UTC)возьмем дни с 1 по 13. Как нам испортить это промежуток? Берем максимально затрагивающий остальные промежутки вариант - съедаем в 13-й день 2 огурца.
теперь берем промежуток с 2 до 14. мы знаем что в 13-й день мы хотим съесть 2 огурца. значит на само деле промежуток со второго дня закончится раньше - на 13-день. как нам его испортить? съесть на 13-й день не 2 а 3 огурца.
и т.д.
с 3 дня съедаем на 13 4
с 4 - 5
с 5 - 6
...
с 12 - 13.
получили на 13 день интервал в один день с 13 огурцами. надо его испортить. съедаем 14 огурцов на 13 день.
итого мы съели 13 дополнительных огурцов. и смогли испортить только 13 интервалов. остался один огурец и последовательность из 15 дней по одному огурцу. в какой бы день его не съесть найдется промежуток в 13 огурцов.
no subject
Date: 2016-07-12 06:31 pm (UTC)Вторая часть, конечно, не слишком строгая, но я зуб даю, что это так.
(no subject)
From:no subject
Date: 2016-07-12 11:55 am (UTC)Рассмотрим следующие пары чисел: 0-13, 1-14, 2-15,..., 12-25, 26-39, 27-40, 28-41, 29-42(всего 13 + 4 = 17 пар), они не пересекаются, кроме того числа с 30 по 38 остались без пары(9 чисел). Если требуемых i, j не существует, то из каждой пары в s_i-х может быть не более одного числа, поэтому всего чисел может быть не более 17+9=26, а у нас их 29, противоречие.
no subject
Date: 2016-07-12 12:06 pm (UTC)no subject
Date: 2016-07-12 04:28 pm (UTC)no subject
Date: 2016-07-12 12:32 pm (UTC)__
28 о за 28 д - всё ок. Теперь можем ли мы разместить 14 о, чтоб испортить расклад? Если портить с одного конца, то с другого всё будет ок. Надо портить в середине. Все 14 сразу - не получается, всё равно остаётся одиночный конец. Вплотную 7 и 7 - тоже не выход. Остаётся найти, как 7 могут испортить 14 дней. Думаю, в этом направление надо двигаться...
no subject
Date: 2016-07-12 04:29 pm (UTC)no subject
Date: 2016-07-12 12:41 pm (UTC)Шаг 1. Двигаем вначале правый край окна пока в окне не наберется 13 или более огурцов. Если нашли 13, то задача решена. Если в окне больше 13, то переходим к Шагу 2.
Шаг 2. Передвигаем левый край окна, выкидывая из него дни, пока в окне не останется 13 огурцов или меньше. Если нашли 13, то задача решена. Если меньше, переходим к Шагу 1.
Если на шаге 2 мы будем из окна выкидывать только дни содержащие 1 огурец, то мы непременно получим 13 огурцов в окне. Следовательно, переход из шага 2 к шагу 1 возможен тогда и только тогда, когда из окна вылетел хотя бы один день, содержащие более 1 огурца. Всего таких дней не может быть более 14. Следовательно после 14 перехода к шагу 1, в окне останутся только дни с одним огруцом. То есть мы обязательно найдем такой промежуток обязательно не далее 14-го шага.
no subject
Date: 2016-07-12 12:42 pm (UTC)Пусть у нас есть 3k шарика на кольцевой леске. У нас существует 3k группы последовательно идущих шариков по k-1 штук в каждой. Начнём слеплять шарики в большие, каждый раз по двое. После k слеплений у нас останется 2k шариков общей массой 3k, то есть условие, аналогичное огурцам (но пока на кольцевой леске!).
Что происходит при слеплении пары шариков? Очевидно, пропадают два интервала, началом и концом которых служит промежуток между слипшимися шариками. Таким образом, после k слеплений у нас на кольцевой леске останется ровно 3k-2*k=k интервалов, в которых сумма шариков равна k-1.
Теперь разрежем леску в произвольном месте. Такой разрез уничтожит ещё часть наших интервалов. Но, один разрез не может уничтожить больше k-2 интервалов (интервал максимальной длины - k-1, количество промежутков в нём - k-2). Следовательно, у нас останется, как минимум, k-(k-2)=2 интервала с суммой шариков, равной k-1.
Небольшая проверка: k=2, число огурцов - 3k=6, число дней - 2k=4. Существование, как минимум, двух дней, в которые съедается ровно k-1=1 огурец, очевидно.
P.S. При решении, действительно, не пострадала ни одна бумажка, так как цепочка шариков и операции над ней легко представимы в уме )
no subject
Date: 2016-07-15 06:45 am (UTC)Однако у вас масштабы!..
(no subject)
From:no subject
Date: 2016-07-12 01:23 pm (UTC)Теперь возьмем 13 огурцов подряд, начиная с i-го и кончая i+12-ым. Поскольку i может принимать значения от 1 до 42-12=30, то таких отрезков 30, и никакие три из них не имеют общего конца. Если среди двух пар (i-1,i) и (i+12,i+13) нет пар первого рода, то утверждение доказано. Но для того, чтобы у каждого из 30 отрезков на конце была пара первого рода, таких пар нужно хотя бы 15, а их всего 14.
no subject
Date: 2016-07-12 01:54 pm (UTC)(no subject)
From:no subject
Date: 2016-07-12 01:45 pm (UTC)Допустим, что не существущет такого промежутка, за который было съедено 13 огурцов, то есть для любых i и j (i < j) x[j] - x[i] != 13.
Следовательно, в последовательности не может встретиться число 13 (Если x[j] = 13, то x[j] - x[0] = 13). Аналогично, в ней не может встретиться число x[1] + 13, x[2] + 13 и так далее. Здесь стоит вспомнить, что у нас 28 чисел от 1 до 42 включительно - то есть, если посмотреть на это с другой стороны, в диапазоне 1..42 есть только 14 чисел, которые не встречаются в этой последовательности. Поэтому у нас нет возможности слишком уж много чисел (меньших 42) исключить из последовательности - максимум мы можем исключить 14. Это означает, что x[14] > 29 - в этом случае, начиная с этого числа мы будем исключать числа, большие 42. Но тогда у нас останется всего 12 огурцов (или меньше) на оставшиеся две недели, а по условию задачи мы должны съедать не менее огурца в день.
no subject
Date: 2016-07-12 02:02 pm (UTC)no subject
Date: 2016-07-12 04:29 pm (UTC)28 огурцов минимум съедаем по любому. Надо 42.
За первые 13 дней съели 13.
Осталось 15 дней за которые надо съесть 29 огурцов.
Жуем 14 дней по 2 в день и в последний день один последний огурец.
no subject
Date: 2016-07-12 04:54 pm (UTC)Если 14 по 2 есть подряд, то в 14 по одному будет промежуток, где есть 13 огурцов. Если 14 по 2 разбавить днями по 1, то тоже получается 13. Но даже если к ряду 14 по 2 присоединить ряд где по одному, то на стыке рядов получится 12+1.
Если есть по 3 огурца в день подряд, то это будет 7 дней, остальное образует ряд по 1 огурцу, там можно найти 13 подряд, или к 12 (3х4) опять же добавляется 1 из ряда, где по одному.
Если есть по 4, то тоже получится либо 12+1, либо 13 в ряду по 1, но в любом случае, если смешивать по 2 и больше, останется больше, чем 13 по одному подряд, и единичек достаточно, чтобы 13 огурцов получилось в любой из разбитых единичками комбинаций для 42 огурцов за 28 дней.
no subject
Date: 2016-07-12 06:48 pm (UTC)no subject
Date: 2016-07-12 06:49 pm (UTC)(no subject)
From:(no subject)
From:всё-таки странно,
Date: 2016-07-12 07:09 pm (UTC)no subject
Date: 2016-07-12 07:32 pm (UTC)no subject
Date: 2016-07-12 08:24 pm (UTC)Положим, что ни одного такого промежутка нет.
Поскольку он съедал по крайней мере 1 огурец в день, то
- количество огурцов, съеденных за первый день
- количество огурцов, съеденных за первые два дня
- количество огурцов, съеденных за первые три дня
...
- количество огурцов, съеденных за первые 28 дней (= 42)
будут все разные, итого 28 чисел от 1 до 42.
Далее, никакая пара этих чисел не отличается ровно на 13. Поэтому
- количество огурцов, съеденных за первый день. плюс 13
- количество огурцов, съеденных за первые два дня, плюс 13
...
- количество огурцов, съеденных за первые 28 дней, плюс 13 (= 42+13 = 55)
тоже все разные числа, и все попарно отличаются от предыдущих 28 чисел.
Итого есть 56 разных чисел от 1 до 55.
Вот и опаньки.
тест
Date: 2016-07-12 08:48 pm (UTC)Есть 28 разных чисел от 1 до 42. Доказать, что найдутся два с разницей 13. Рассмотрми остаток от деления на 13. Всего 28 чисел (28 = 13 + 13 + 2), значит, найдутся 3 числа с одинаковым остатком. Максимально чисел с одинаковым остатком может быть 4 (т.к. 4 * 13 больше 42). имеем <= 4 корзинки и в них 3 яблока. Очевидно, найдутся 2 яблока, лежащих рядом.
(no subject)
From:Очень красиво :)
From: (Anonymous) - Date: 2016-07-25 02:49 am (UTC) - Expand(no subject)
From:no subject
Date: 2016-07-13 09:07 am (UTC)Представим себе ряд из 28 дней, в каждый из которых съедено по одному огурцу. В таком ряду безусловно есть 13 дней подряд с 13 съеденными огурцами. Но у нас остаётся ещё 14 огурцов, чтобы добавить.
Если мы расположим их, растягивая на максимальное количество дней, то дней, в которые съедено по 2 огурца у нас будет всего 14 дней, а 14 дней останется по 1 огурцу. Если мы будем съедать в какой-то из дней больше двух огурцов, то количество дней, в которые съедено по одному огурцу будет только расти.
no subject
Date: 2016-07-13 04:58 pm (UTC)(no subject)
From: (Anonymous) - Date: 2016-07-15 05:09 am (UTC) - Expand(no subject)
From: (Anonymous) - Date: 2016-07-15 05:29 am (UTC) - Expand(no subject)
From:no subject
Date: 2016-07-15 07:43 am (UTC)no subject
Date: 2016-07-23 11:38 pm (UTC)