基礎問題集
数学A 整数問題「整数問題」の問題68 解説
数学Aの整数問題「整数問題」にある問題68の基礎問題と解説ページです。問題と保存済み解説を公開し、ログイン後はAI質問と学習履歴も利用できます。
MathGrAIl の基礎問題集にある公開問題ページです。ログイン前でも問題と保存済み解説を確認でき、ログイン後はAI質問と学習履歴の保存を利用できます。
- 基礎問題の問題画像と保存済み解説を公開
- ログイン後にAI質問で復習
- ログイン後に学習履歴を保存
解説
方針・初手
格子点を通る直線上で、格子点から格子点への移動ベクトルを考える。2つの格子点を結ぶベクトルは成分が整数であるため、そのベクトルを何倍しても格子点に移る。この考えを用いれば、直線の傾きが定義できない垂直な場合も含めて処理できる。
解法1
**(1)**
直線 $l$ 上に異なる2つの格子点
$$ A(a,b),\quad B(c,d)
$$
があるとする。ただし $a,b,c,d$ は整数であり、$A \ne B$ である。
このとき、$A$ から $B$ へのベクトルは
$$ \overrightarrow{AB}=(c-a,\ d-b)
$$
である。$a,b,c,d$ は整数なので、$c-a$ と $d-b$ も整数である。
任意の整数 $n$ に対して、点 $P_n$ を
$$ P_n=A+n\overrightarrow{AB}
$$
とおくと、
$$ P_n=(a+n(c-a),\ b+n(d-b))
$$
である。ここで $a,b,c-a,d-b,n$ はすべて整数だから、$P_n$ の座標はどちらも整数である。したがって、$P_n$ は格子点である。
また、$P_n$ は点 $A$ から直線 $AB$ の方向に進んだ点であるから、すべて直線 $l$ 上にある。
さらに、$A \ne B$ より
$$ (c-a,\ d-b)\ne(0,0)
$$
である。したがって、異なる整数 $n$ に対して点 $P_n$ は異なる。よって、直線 $l$ 上には無限個の格子点がある。
以上より、直線 $l$ 上に格子点が2つ以上あるとき、$l$ 上には無限個の格子点がある。
**(2)**
直線 $l$ 上に無限個の格子点があるとする。このとき、直線 $l$ 上には少なくとも2つの異なる格子点があるので、それらを
$$ A(a,b),\quad B(c,d)
$$
とする。
このとき、(1) と同様に
$$ \vec{v}=\overrightarrow{AB}=(c-a,\ d-b)
$$
とおけば、$\vec{v}$ は成分が整数である零ベクトルでないベクトルであり、直線 $l$ の方向ベクトルである。
直線 $m$ は直線 $l$ と平行であるから、$\vec{v}$ は直線 $m$ の方向ベクトルとしても使える。
ここで、直線 $m$ 上に格子点が1つでもあると仮定し、それを
$$ C(e,f)
$$
とする。ただし $e,f$ は整数である。
任意の整数 $n$ に対して、点 $Q_n$ を
$$ Q_n=C+n\vec{v}
$$
とおくと、
$$ Q_n=(e+n(c-a),\ f+n(d-b))
$$
である。$e,f,c-a,d-b,n$ はすべて整数だから、$Q_n$ は格子点である。
また、$\vec{v}$ は直線 $m$ の方向ベクトルであり、$C$ は直線 $m$ 上の点であるから、すべての $Q_n$ は直線 $m$ 上にある。
さらに、$\vec{v}\ne(0,0)$ であるため、異なる整数 $n$ に対して $Q_n$ は異なる。したがって、直線 $m$ 上には無限個の格子点がある。
よって、直線 $m$ 上に格子点が1つでもあれば、$m$ 上には無限個の格子点がある。
したがって、直線 $m$ 上の格子点の個数は、$0$ 個であるか、無限個であるかのどちらかである。
解説
この問題の中心は、「2つの格子点を結ぶ方向ベクトルは整数成分をもつ」という点である。
傾きを使って考えると、垂直な直線の場合を別に扱う必要が出る。しかし、ベクトルを使えば、垂直な直線も水平な直線も同じ形で処理できる。
(2) では、直線 $l$ 上の2つの格子点から整数成分の方向ベクトルを作り、それを平行な直線 $m$ に移して使う。$m$ 上に格子点が1つでもあれば、そこから同じ方向ベクトルを整数倍だけ足すことで、無限個の格子点を作ることができる。
答え
**(1)**
直線 $l$ 上に格子点が2つ以上あるとき、2つの格子点を結ぶ整数成分の方向ベクトルを整数倍して進むことで、$l$ 上に無限個の格子点が存在する。
**(2)**
直線 $l$ 上に無限個の格子点があるとき、直線 $m$ 上に格子点が1つでもあれば、$l$ と同じ整数成分の方向ベクトルを用いて $m$ 上に無限個の格子点が作れる。したがって、$m$ 上には格子点がないか、または無限個の格子点がある。