問いしるべ
100日数学チャレンジ 問題 22
問題 22

問題022|整数・数え上げと小さい解への帰着

難易度 D 目安 60分

前半戦

非負整数 x,y を用いて 7x+11y と表すことのできない正整数について,その最大値と総数を求めよ.

方程式 x2−2y2=1 を満たす正整数の組 (x,y) のうち,y≤100 であるものをすべて求めよ.答え以外の解がないことも示せ.

後半戦

非負整数 n に対して,Cn=1n+1(2nn) と置く.

(1) Cn が整数であることを示せ.

(2) Cn が奇数となるような n をすべて求めよ.

正整数を定義域とし,非負整数を値にとる関数 f が,すべての正整数 m,n に対して

f(m+n)−f(m)−f(n)∈{0,1}

を満たしている.さらに f(2)=0, f(3)>0, f(9999)=3333 とする.f(1982) を求めよ.

IMO 1982 第1問

ヒント 設問 1

ヒント 1

x を11で割った余りに取り直すと,0≤x≤10 としてよい.この11個の 7x は,11を法としてすべて異なる余りをもつ.

ヒント 2

7r と同じ余りをもつ整数のうち,表せない正整数は 7r−11,7r−22,… である.総数を求める際は r と 11−r を組にせよ.

ヒント 設問 2

ヒント 1

解 (x,y) から (3x−4y,3y−2x) を作ると,左辺の値は変わらない.y>2 のとき,この新しい組も正整数になるかを調べよ.

ヒント 2

y>2 ならば 4y/3<x<3y/2 が成り立つので,変換後の2成分は正で,さらに第2成分は y より小さい.逆変換は (u,v)↦(3u+4v,2u+3v) である.

ヒント 設問 3

ヒント 1

(1) 隣り合う2つの二項係数の差を考えよ.(2) 階乗に含まれる2の因子の個数は ⌊m/2⌋+⌊m/4⌋+⋯ で数えられる.

ヒント 2

m の二進表示に現れる1の個数を s2(m) とすると,m! に含まれる2の指数は m−s2(m) である.これを使うと Cn に含まれる2の指数は s2(n)−v2(n+1) になる.

ヒント 設問 4

ヒント 1

非負整数値であることと f(2)=0 から f(1) を決め,次に f(3) を決めよ.条件を繰り返すと f(3k)≥k が得られる.

ヒント 2

9999=3k+3(3333−k) と分割して,1≤k≤3333 で f(3k)=k を示せ.最後に 1982=1980+2 と 5946=1982+1982+1982 を使え.

解答 設問 1

x=11q+r,0≤r≤10 と書けば,7x+11y=7r+11(y+7q) となる.したがって,表せる整数全体は 7r+11t(r=0,…,10, t≥0)である.7と11は互いに素なので,7r の余りはこの11個で0から10までをちょうど1回ずつとる.

r≥1 の剰余類で表せない正整数は,7r より小さいもの,すなわち 7r−11,7r−22,… のうち正のものである.全体の最大値は r=10 のときの 70−11=59 である.

その個数は ⌊7r/11⌋ だから,総数は ∑r=110⌊7r/11⌋ となる.7r/11 は整数でないので,

⌊7r11⌋+⌊7(11−r)11⌋=6

である.r と 11−r の5組を足すと,総数は 30 個と分かる.余り0の正整数はすべて11の倍数として表せるので,加えるべきものはない.

解答 設問 2

y=1 では x2=3 となり解はなく,y=2 では (x,y)=(3,2) である.y>2 の解について,u=3x−4y, v=3y−2x と置くと,展開によって

u2−2v2=x2−2y2=1

となる.また x2=2y2+1 より x>4y/3 であり,y>2 から 2y2+1<9y2/4,すなわち x<3y/2 である.よって u,v>0 である.さらに x>y より v=3y−2x<y である.

したがって,y>2 の解からは,必ず第2成分が小さい正整数解が得られる.これを繰り返すと有限回で (3,2) に到達する.逆変換は

(x,y)=(3u+4v, 2u+3v)

で一意に決まるので,すべての正整数解は (3,2) からこの逆変換を繰り返して得られる.順に

(3,2),(17,12),(99,70),(577,408),…

となり,第2成分は狭義に増加する.よって求める組は (3,2),(17,12),(99,70) である.

解答 設問 3

(1) n=0 では C0=1 である.n≥1 では

(2nn+1)=nn+1(2nn)

より,Cn=(2nn)−(2nn+1) となる.したがって Cn は整数である.

(2) 正整数 M を割り切る2の最高べきの指数を v2(M) とする.m! の各因子について2の因子を1個ずつ数えると,

v2(m!)=∑j≥1⌊m2j⌋

である.m=∑i≥0εi2i(εi=0,1)と二進表示し,s2(m)=∑iεi と置くと,右辺は

∑i≥1εi(2i−1+⋯+1)=∑i≥0εi(2i−1)=m−s2(m)

となる.s2(2n)=s2(n) だから,

v2(Cn)=(2n−s2(2n))−2(n−s2(n))−v2(n+1)=s2(n)−v2(n+1).

n の二進表示の末尾に連続する1の個数を t とすると,1を加えたときの繰り上がりから v2(n+1)=t である.よって v2(Cn)=0 となるのは,二進表示の1が末尾の t 個だけである場合,すなわち n=2t−1 の場合に限られる.n=0 も t=0 に対応する.したがって答えは

n=2t−1(t=0,1,2,…)

である.

解答 設問 4

m=n=1 を代入すると,0=f(2)=2f(1)+δ(δ=0 または1)である.f(1) は非負整数なので f(1)=0 である.次に 3=1+2 より f(3)∈{0,1} であり,f(3)>0 だから f(3)=1 となる.

与条件から常に f(m+n)≥f(m)+f(n) である.帰納的に f(3k)≥k が従う.1≤k<3333 ならば,

3333=f(9999)≥f(3k)+f(3(3333−k))≥k+(3333−k)=3333.

したがって途中もすべて等号であり,f(3k)=k である.k=3333 の場合は仮定そのものである.

1982=1980+2 より,f(1982)≥f(1980)+f(2)=660 である.一方,5946=3⋅1982 と先ほどの結果から,

1982=f(5946)≥3f(1982)

となる.f(1982) は整数なので f(1982)≤660 である.以上より f(1982)=660 を得る.なお,f(n)=⌊n/3⌋ はすべての条件を満たすので,条件が両立することも確認できる.

DISCUSSION

この問題の掲示板

この掲示板は公開されています。ニックネームと本文は、ログインしていない人にも表示されます。Googleアカウントの名前は表示されません。

閲覧はどなたでもできます。ログインすると投稿できます。

まだ投稿はありません。