Андреев А.A., Савин А.Н., Саушкин М.Н.
Введение
При решении многих задач используется логический метод рассуждения — "от противного". В данной брошюре рассмотрена одна из его форм — принцип Дирихле. Этот принцип утверждает, что если множество из N элементов разбито на пнепересекающихся частей, не имеющих общих элементов, где N>n то, по крайней мере, в одной части будет более одного элемента. Принцип назван в честь немецкого математика Дирихле (1805-1859), который успешно применял его к доказательству арифметических утверждений.
По традиции принцип Дирихле объясняют на примере "зайцев и клеток". Если мы хотим применить принцип Дирихле при решении конкретной задачи, то нам предстоит разобраться, что в ней — "клетки", а что — "зайцы". Это обычно является самым трудным этапом в доказательстве. Цель этого статьи — познакомить школьника с некоторыми изюминками решения задач на принцип Дирихле.
Статья предназначена главным образом для старшеклассников, однако школьники младших классов также несомненно найдут в ней много полезного.
Формулировка принципа Дирихле
Самая популярная формулировка принципа Дирихле звучит так:
ФОРМУЛИРОВКА 1. "Если в n клетках сидит n+1 или больше зайцев, то найдётся клетка, в которой сидят по крайней мере два зайца".
Заметим, что в роли зайцев могут выступать различные предметы и математические объекты - числа, отрезки, места в таблице и т. д.
Принцип Дирихле можно сформулировать на языке множеств и отображений.
ФОРМУЛИРОВКА 2. "При любом отображении множества P, содержащего n+1 элементов, в множество Q, содержащее n элементов, найдутся два элемента множества P, имеющие один и тот же образ".
Несмотря на совершенную очевидность этого принципа, его применение является весьма эффективным методом решения задач, дающим во многих случаях наиболее простое и изящное решение. Однако во всех этих задачах часто нелегко догадаться, что считать "зайцем", что - "клеткой", и как использовать наличие двух "зайцев", попавших в одну "клетку". С помощью принципа Дирихле обычно доказывается существование некоторого объекта, не указывая, вообще говоря, алгоритм его нахождения или построения. Это даёт так называемое неконструктивное доказательство - мы не можем сказать, в какой именно клетке сидят два зайца, а знаем только, что такая клетка есть.
Приводимые ниже теоремы и задачи показывают, что природа "зайцев" и "клеток" в различных задачах может сильно отличаться друг от друга.
Пример 1. Доказать, что если прямая l, расположенная в плоскости треугольника ABC, не проходит ни через одну из его вершин, то она не может пересечь все три стороны треугольника.
Решение
Полуплоскости, на которые прямая l разбивает плоскость треугольника ABC, обозначим через q1 и q2; эти полуплоскости будем считать открытыми (то есть не содержащими точек прямой l). Вершины рассматриваемого треугольника (точки A, B, C) будут "зайцами", а полуплоскости q1 и q2 - "клетками". Каждый "заяц" попадает в какую-нибудь "клетку" (ведь прямая l не проходит ни через одну из точек A, B, C). Так как "зайцев" три, а "клеток" только две, то найдутся два "зайца", попавшиев одну "клетку"; иначе говоря, найдутся такие две вершины треугольника ABC, которые принадлежат одной полуплоскости. См рисунок.
Пусть, скажем, точки A и B находятся в одной полуплоскости, то есть лежат по одну сторону от прямой l. Тогда отрезок AB не пересекается с l. Итак, в треугольнике ABC нашлась сторона, которая не пересекается с прямой l.
Пример 2. Внутри равностороннего треугольника со стороной 1 расположено 5 точек. Доказать, что расстояние между некоторыми двумя из них меньше 0,5.
Решение
Средние линии правильного треугольника со стороной 1 разбивают его на четыре правильных треугольничка со стороной 0,5. Назовём их "клетками", а точки будем считать "зайцами". По принципу Дирихле из пяти точек хотя бы две окажутся в одном из четырёх треугольничков (См. рисунок). Расстояние между этими точками меньше 0,5, поскольку точки не лежат в вершинах треугольничков. (Здесь использована известная лемма о том, что длина отрезка, расположенного внутри треугольника, меньше длины его наибольшей стороны.)
Пример 3. На краю круглого стола расположены на одинаковом расстоянии друг от друга n флагов стран, за столом сидят n послов этих стран, причём каждый посол сидит рядом с чужим флагом. Доказать, что существует такое вращение стола, после которого хотя бы два посла окажутся рядом с флагом своей страны.
Решение Существует n-1 способов вращения стола, после каждого из них взаимное расположение флагов и послов изменится. Каждому послу сопоставим вращение, после которого он окажется рядом со своим флагом. Согласно принципу Дирихле при каком-то вращении два (может, и больше) посла окажутся рядом со своим флагом. В решении задачи роль "зайцев" играют, естественно, послы, а роль "клеток" - положения стола при различных вращениях. Посол попадает в "клетку", если при соответствующем этой "клетке" вращении стола он оказывается рядом с флагом своей страны. Таким образом, "клеток" у нас n-1, а "зайцев" - n. Замечание Условие о том, что вначале ни один из послов не находится рядом со своим флагом, существенно. На самом деле первоначальное положение также является "клеткой", но эта "клетка" по условию заведомо окажется пустой. Так что можно считать, что всего "клеток" имеется n-1.
Пример 4. Доказать, что для любого действительного числа a > 0 и любого натурального N найдутся такие целые m і 0 и k > 0, что |ka-m| Ј1/N.
Решение Разобьём отрезок [0, 1] точками 1/N, 2/N, . . . , [(N-1)/( N)] на N отрезков (См. рисунок). Полученные отрезки будем считать "клетками", а числа 1, 2, . . . , N+1 примем в качестве "зайцев".
Если k - один из "зайцев", то число ka можно записать в виде ka = m + x, где m - целое, 0Ј x < 1 (т. е. в виде суммы целой и дробной части). Число x попадает в одну из "клеток"; в эту "клетку" мы и посадим "зайца" k.
Так как "зайцев" больше, чем "клеток", то найдутся два "зайца", сидящих в одной "клетке". Иначе говоря, среди чисел 1, 2, . . . , N+1 найдутся такие два числа k1 < k2, что