こんにちは。今回は、格子点問題の求め方・数え方について解説します。
格子点の求め方・数え方
格子点を求め方について解説します。
格子点とは
格子点とは、座標平面上で \(x\) 座標と \(y\) 座標がともに整数である点のことです。\( (1,1) \)、\( (1,2) \)、\( (3.6) \) は格子点の例です。しかし、\( (0.3, 1) \) や \( \left(\displaystyle \frac{1}{3} , 2 \right)\) は成分が整数ではないですから、格子点とはいいません。
座標平面上で \(x\) 座標と \(y\) 座標がともに整数である点をプロットすると、格子状になるため、そのような点を格子点と言います。
格子点の問題では、ある領域内でいくつ格子点があるかを問われることが多いです。ですから、格子点の問題の攻略のカギは格子点の数え方にあります。格子点の数え方をマスターしましょう!
格子点の数え方
格子点の数え方は次の2点になります。
① そのまま数える(領域に文字が含まれていない場合)
② 縦線を作り、数列として数える(領域に文字が含まれている場合)
1つ目の方法は、そのまま数えるというものです。これは領域を表す方程式に文字が含まれていない場合に有効です。1つ目の方法は丁寧に数え上げることさえできれば、簡単に答えが求められるため、比較的簡単な方法です。誘導としてつくことが多いです。
2つ目の方法は、数列として数える方法です。数列として数える方法は、領域を表す方程式に文字が含まれている場合に有効です。文字が含まれているのため、具体的に領域をイメージしにくいため、間違いやすいです。2つ目の方法についてもう少し解説していきます。
縦(横)に切って和を取る
2つ目の数列として数える場合、和の取り方に注意が必要です。この場合では、まず、領域を縦(もしくは横)に切り、縦線(もしくは横線)上の格子点の数を数えます。そして、領域内において、縦線を動かし、和をとります。縦線で数えて和を取るか、横線で数えて和を取るかは楽な方で考えます。
格子点の数え方
- 領域を縦(もしくは横)に切り、格子点の数を数える
- 縦線を動かし、和を取る
なお、縦線上の格子点の数は
(最大値)ー(最小値)+1
で求められます。いわゆる植木算です。最後の+1を忘れないようにしましょう。
例えば、ある領域において、縦線で切ったとき、格子点が次のようにあったとします。

上図において、格子点の数は
$$ 5-1+1 = 5 (個) $$
から5個と求められます。\(5-1=4\)で4個と数えないように注意してください。
この程度であれば、間違いは少ないのですが、文字が入った途端に間違いが多くなります。例えば、次の縦線上ではどうでしょうか。

上図において、格子点の数は
$$ n-1+1 = n (個) $$
から \(n\) 個と求められます。最後の+1を忘れないようにしましょう。
数列として数えるとは
縦に切って数えた格子点は数列の和として総数を求めることになります。具体的に考えてみます。
例 次の領域内の格子点を考えてみましょう。
$$ y \leq x,y \geq 0,0 \leq x\leq 5 $$
領域内を図示すると、下図のようになります。

この領域内の格子点(\(x\) 座標と \(y\) 座標がともに整数である点)を図示すると、次のようになります。

この程度であれば、このまま数えても良いのですが、練習のため、数列として数えてみることにします。
数列 \( a_k\) を \(x=k\) 上の格子点の数とおく。 このとき、\(a_0\) は \(x=0\) 上の格子点なので、\(a_0=1\) となります。\(1 \leq k \leq 5\) においても同様にして数えると、
$$ a_1 = 1,a_2 = 2,a_3 = 3,a_4 = 4,a_5 = 5 $$
となるので、格子点の総数は、
\begin{eqnarray*} a_0+a_1+a_2+a_3+a_4+a_5 &=& 0+1+2+3+4+5 \\
&=& 15
\end{eqnarray*}
と求められます。もう少しそれっぽく書くと、
\begin{eqnarray*} a_0+a_1+a_2+a_3+a_4+a_5 &=& \sum_{k=0}^5 a_k \\
&=& \sum_{k=0}^5 k \\
&=& \frac{1}{2}・(0+5)・6 \\
&=& 15
\end{eqnarray*}
となります。今回は、\(k=5\) でしたが、実際の問題では、\(k=n\) など文字となることが多いです。
例題と演習
では、実際の入試問題を見ていくことにします。
例題:格子点の数え上げ
(1)不等式 \(|x|+2|y| \leq 4 \) の表す領域を \(D\) とする。領域 \(D\) 内の格子点(\( (x, y) \) の両座標とも整数となる点)は何個か。
(2)\(n\) を自然数として、不等式 \(|x|+2|y| \leq 2n \) の表す領域を \(F\) とする。領域 \(F\) 内の格子点の総数は何個か。
(早稲田大)
方針
(1)は領域に文字が含まれていないので、そのまま数えると良いでしょう。
(2)は領域に文字が含まれているので、横線を作り、数列として数えます。縦で切ると、偶奇の場合分けが発生するため、横で切った方がラクに数えられます。
(1)領域 \(D\) を図示する。不等式 \(|x|+2|y| \leq 4 \) において、① \(x \geq 0, y \geq 0\)、② \(x \leq 0, y \geq 0\)、③ \(x \geq 0, y \leq 0\)、④ \(x \leq 0, y \leq 0\) の4つの場合に分け、絶対値を外すと次のようになる。
\[
\left\{
\begin{array}{l}
x+2y \leq 4\\
-x+2y \leq 4\\
x-2y \leq 4\\
-x-2y \leq 4
\end{array}
\right.
\]
これより、領域 \(D\) は次のようになる。

領域内の格子点を図示すると、

となる。よって、求める格子点の数は21個である。
(2)(1)と同様にして求めると、領域 \(F\) は次のようになる。

\(y>0\) の部分の格子点の数を考える。\(y>0\) における数列 \( \{a_k\}\) を \(y=k\) 上の格子点の数とおく。

上図より、数列 \(a_k\) は、
\begin{eqnarray*} a_k &=& 2n-2k – (2k-2n) +1 \\
&=& 4n-4k+1
\end{eqnarray*}
となる。よって、\(y>0\) 上の格子点の数は
\begin{eqnarray*} \sum_{k=1}^n a_k &=& \sum_{k=1}^n (4n-4k+1)\\
&=& 2n^2-n(個)
\end{eqnarray*}
である。また、対称性から、\(y<0\) における格子点の個数も \( 2n^2-n \) 個である。
一方で、\(y=0\) における格子点の個数は、
$$ 2n-(-2n)+1=4n+1 (個)$$
である。以上より、領域 \(F\) の格子点の総数は、
$$ 2(2n^2-n)+(4n+1) = 4n^2+2n+1(個)$$
となる。
演習1:格子点の数え上げ
\(n\) を自然数とする。連立不等式
$$ y\leq 2n^2,y\geq\frac{1}{2}x^2,x\geq 0 $$
を満たす整数の組 \( (x,y) \) の個数を求めよ。
(お茶の水女子大)
演習2:格子点の数え上げ
\(N\) を正の整数とする。\(2N\) 以下の正の整数 \(m,n\) からなる組 \( (m,n) \) で方程式 \(x^2-nx+m =0 \) が \(N\) 以上の実数解をもつようなものは何個あるか。
(東京工業大)
おわりに
今回は、格子点の求め方・数え方について解説しました。
最後までお読みいただき、ありがとうございました。