§C5.1鳩の巣原理の応用

最終更新

鳩の巣原理の応用設計では、対象を有限個の型に分類し、同じ型に属する二つの対象から求める結論が従うように分類を定めます。原理を用いるためには、対象の数が型の数を上回ることを確かめなければなりません。本記事では、部分列と整数の分類を例に、この条件を結論へ結び付ける設計を説明します。

1 部分列の長さによる分類

定理 1.1 (Erdős–Szekeres の定理).nnを正の整数とし、相異なる実数a1,a2,…,an2+1a_1,a_2,\ldots,a_{n^2+1}をこの順に並べる。この列は、長さn+1n+1の狭義単調増加部分列または長さn+1n+1の狭義単調減少部分列をもつ。

証明. 各iiに対し、aia_iで終わる狭義単調増加部分列の長さの最大値をpip_i、aia_iで終わる狭義単調減少部分列の長さの最大値をqiq_iとする。

長さn+1n+1の狭義単調増加部分列も狭義単調減少部分列も存在しないと仮定する。このとき、すべてのiiに対して1≤pi≤n1\leq p_i\leq nかつ1≤qi≤n1\leq q_i\leq nであるから、組(pi,qi)(p_i,q_i)はn2n^2通りしかない。

i<ji<jとする。ai<aja_i<a_jならば、aia_iで終わる長さpip_iの狭義単調増加部分列の末尾にaja_jを加えることができるので、pj≥pi+1p_j\geq p_i+1である。ai>aja_i>a_jならば、同様にqj≥qi+1q_j\geq q_i+1である。各項は相異なるから二場合のいずれかが成り立ち、(pi,qi)≠(pj,qj)(p_i,q_i)\neq(p_j,q_j)を得る。

したがって、n2+1n^2+1個の相異なる組(pi,qi)(p_i,q_i)がn2n^2個の組からなる集合{1,…,n}2\{1,\ldots,n\}^2に属することになる。これは鳩の巣原理に反する。ゆえに、求める部分列の少なくとも一方が存在する。▨

2 整数を別の量で分類する例

例 2.1.nnを正の整数とする。n+1n+1個の整数x1,x2,…,xn+1x_1,x_2,\ldots,x_{n+1}から、差がnnの倍数となる二つを選ぶことができる。

証明. 各xix_iをnnで割った余りによって、0,1,…,n−10,1,\ldots,n-1のnn個の箱に分類する。n+1n+1個の整数をnn個の箱に入れるので、同じ余りをもつxi,xjx_i,x_jがあり、添字を入れ替えればi<ji<jとしてよい。ある整数qi,qjq_i,q_jと同じ余りrrを用いてxi=nqi+rx_i=nq_i+r、xj=nqj+rx_j=nq_j+rと書くと、xj−xi=n(qj−qi)x_j-x_i=n(q_j-q_i)である。したがって、xj−xix_j-x_iはnnの倍数である。▨

例 2.2.nnを正の整数とする。1,2,…,2n1,2,\ldots,2nから相異なるn+1n+1個の整数を選ぶと、そのうちの一方が他方を割り切る二数が存在する。

証明. 選んだ各整数xxは、非負整数kkと奇数mmを用いてx=2kmx=2^k mと一意に表すことができる。この奇数mmをxxの奇数部分とする。11以上2n2n以下の奇数は1,3,…,2n−11,3,\ldots,2n-1のnn個であるから、選んだn+1n+1個の整数のうち二つx,yx,yは同じ奇数部分mmをもつ。

x=2rmx=2^r m、y=2smy=2^s mと書く。xxとyyは相異なるからr≠sr\neq sであり、必要ならxxとyyを入れ替えてr<sr<sとしてよい。このときy=2s−rxy=2^{s-r}xであるから、xxはyyを割り切る。▨

3 設計チェック

注意 3.1. 鳩の巣原理を適用する前に、次の四点を確かめる。

  1. 鳩に当たる対象をすべて特定する。
  2. 各対象がちょうど一つに入る分類を定め、その分類の個数を数える。
  3. 対象の個数が分類の個数を上回ることを示す。
  4. 同じ分類に入った相異なる二対象から、求める結論が実際に従うことを示す。

分類の個数を必要以上に大きく評価すると、同じ分類に二対象が入ることを保証するために、問題が与えるより多くの対象が必要になる。

4 演習

問題 4.1.2n+12n+1個の整数から、同じ偶奇をもつn+1n+1個を選ぶことができることを示せ。

解答.

nnを00以上の整数とする。与えられた2n+12n+1個の整数を、偶数の組と奇数の組の二つに分類する。どちらの組の個数もnn以下であると仮定すると、整数の個数はn+n=2nn+n=2n以下となり、2n+12n+1個であることに反する。したがって、一方の組はn+1n+1個以上の整数を含む。その組からn+1n+1個を選べば、それらは同じ偶奇をもつ。▨

問題 4.2. 整数列x1,x2,…,xn+1x_1,x_2,\ldots,x_{n+1}には、和がn+1n+1の倍数となる空でない連続部分xi+xi+1+⋯+xjx_i+x_{i+1}+\cdots+x_jが存在することを示せ。00から始まる部分和を分類に用いよ。

解答.

nnを正の整数とする。S0=0S_0=0とし、k=1,…,n+1k=1,\ldots,n+1についてSk=x1+x2+⋯+xkS_k=x_1+x_2+\cdots+x_kと置く。S0,S1,…,Sn+1S_0,S_1,\ldots,S_{n+1}はn+2n+2個の整数である。例 2.1を正の整数n+1n+1と、このn+2n+2個の整数に適用すると、差がn+1n+1の倍数となる二つSi,SjS_i,S_jを選ぶことができる。添字を入れ替えて0≤i<j≤n+10\le i<j\le n+1としてよい。このとき

Sj−Si=xi+1+xi+2+⋯+xjS_j-S_i=x_{i+1}+x_{i+2}+\cdots+x_j

はn+1n+1の倍数である。i<ji<jであるから、この和は少なくとも一つの項xjx_jを含む空でない連続部分の和である。▨

問題 4.3. 一辺の長さが11の正方形の内部または周上に相異なるn2+1n^2+1個の点を置くと、距離が2/n\sqrt{2}/n以下となる二点が存在することを示せ。

解答.

nnを正の整数とし、正方形を座標平面の0≤x≤10\le x\le1、0≤y≤10\le y\le1の部分とする。i,j=0,1,…,n−1i,j=0,1,\ldots,n-1について、一辺の長さが1n\dfrac1nの閉じた小正方形

Qij={(x,y) | in≤x≤i+1n, jn≤y≤j+1n}Q_{ij}=\left\{(x,y)\ \middle|\ \frac in\le x\le\frac{i+1}n,\ \frac jn\le y\le\frac{j+1}n\right\}

を考える。小正方形はn2n^2個ある。

正方形の各点(x,y)(x,y)を一つの小正方形に割り当てる。nxnxを超えない最大の整数とn−1n-1のうち小さい方をii、nynyを超えない最大の整数とn−1n-1のうち小さい方をjjとする。x<1x<1ならiiはnxnxを超えない最大の整数であるからin≤x<i+1n\dfrac in\le x<\dfrac{i+1}nであり、x=1x=1ならi=n−1i=n-1でn−1n≤x=nn\dfrac{n-1}n\le x=\dfrac nnである。yyとjjについても同じであるから、(x,y)(x,y)はQijQ_{ij}に属する。この割り当てで、各点はちょうど一つの小正方形に割り当てられる。

n2+1n^2+1個の点をn2n^2個の小正方形に割り当てるので、鳩の巣原理により、同じ小正方形QijQ_{ij}に割り当てられた相異なる二点(x,y),(x′,y′)(x,y),(x',y')が存在する。二点はともにQijQ_{ij}に属するので∣x−x′∣≤1n|x-x'|\le\dfrac1n、∣y−y′∣≤1n|y-y'|\le\dfrac1nであり、二点の距離は

(x−x′)2+(y−y′)2≤1n2+1n2=2n\sqrt{(x-x')^2+(y-y')^2}\le\sqrt{\frac1{n^2}+\frac1{n^2}}=\frac{\sqrt2}n

を満たす。▨

前提記事