一次不定方程式の問題を完全攻略!特殊解の裏ワザと解き方の極意
高校数学の「数学A」における整数分野で、多くの受験生が一度は頭を抱えるテーマが一次不定方程式です。「解法の大枠は理解していても、係数が大きくなると特殊解が見つからない」「ユークリッドの互除法を使った逆算で計算ミスを頻発してしまう」といった悩みを抱える受験生は少なくありません。
大学入学共通テストや国公立・難関私大の個別試験において、整数解を求める問題は計算の正確性と論理的思考力を測る試金石となっています。しかし、解法の背景にある「互いに素」という性質を正しく捉え、状況に応じた解法ルート(互除法や合同式)を選択できるようになれば、迷わず短時間で完答できる安定した得点源へと変わります。本稿では、基本パターンの処理から差がつく応用技術まで、現場で役立つ実践ノウハウを体系的に整理してお伝えします。
📌 【この記事の重要ポイントまとめ】
- 要点1:一次不定方程式 $ax+by=c$ が整数解をもつ条件は、$c$ が $a, b$ の最大公約数の倍数であること。
- 要点2:特殊解の導出は、係数が小さければ「目視代入」、係数が大きい場合は「ユークリッドの互除法の逆算」か「合同式(mod)」を使い分ける。
- 要点3:一般解の記述では「辺々を引いて $a(x-p) = -b(y-q)$ を作り、互いに素の性質を利用する」基本ステップを崩さないことが最大の減点防止策となる。
【基礎知識】一次不定方程式とは?整数解をもつ条件と「互いに素」の論理
一次不定方程式とは、$ax + by = c$($a, b, c$ は整数、かつ $a \neq 0, b \neq 0$)のように、未知数に対して方程式の数が足りず、解が無数に存在する(定まらない)一次方程式を指します。数学Aの整数問題で問われるのは、その無数にある解の中から「$x, y$ がともに整数となる組み合わせ(整数解)」をすべて求める作業です。
まず押さえるべき大前提として、一次不定方程式 $ax + by = c$ が整数解をもつための必要十分条件が存在します。それは、「$c$ が $a$ と $b$ の最大公約数 $\gcd(a, b)$ の倍数であること」です。
例えば、$6x + 9y = 5$ という方程式を考えてみます。左辺は $3(2x + 3y)$ と変形でき、常に $3$ の倍数になります。しかし右辺は $5$ であり $3$ の倍数ではないため、どのような整数 $x, y$ を代入しても等式は成立しません。つまり、この方程式には整数解が存在しないと即座に判断できます。
教科書や入試問題で頻出する $ax + by = 1$ という形は、$a$ と $b$ の最大公約数が $1$、すなわち「$a$ と $b$ が互いに素」であることを前提としています。この「互いに素」という性質こそが、後述する一般解の導出において欠かせない論理の柱となります。
【特殊解の見つけ方】目視で探す限界とユークリッドの互除法を使う決定的な理由
一次不定方程式を解く最初の関門が、無数にある解のうちの1組である「特殊解($x=p, y=q$)」の見つけ方です。特殊解を特定するアプローチは、係数の大きさによって明確に分かれます。
係数が一桁から二桁前半程度で比較的小さい場合は、代入による探索が最速です。例えば、$5x + 3y = 1$ という式であれば、$x=2, y=-3$ を代入すると $5(2) + 3(-3) = 10 - 9 = 1$ となり、暗算レベルで1組の解が見つかります。この段階で大掛かりな計算を行う必要はありません。
問題となるのは、次のような係数が大きいケースです。
【例題】$37x + 16y = 1$ の整数解を求めよ。
係数が $30$ や $50$ を超えてくると、直感で $x, y$ を当てるのは極めて困難になり、試験時間の浪費につながります。ここで決定的な役割を果たすのが「ユークリッドの互除法」です。
互除法は本来、2つの整数の最大公約数を求めるアルゴリズムですが、その計算過程を「余り=」の形に変形して逆順に代入していく(逆算する)ことで、どんなに大きな係数であっても確実に $ax + by = 1$ を満たす特殊解を機械的に導き出せます。「勘に頼らず、必ず答えに辿り着く再現性」を担保するために、互除法の活用が不可欠となるわけです。
【完全手順】ユークリッドの互除法から一般解の求め方までをステップ解説
それでは、先ほどの例題 $37x + 16y = 1$ を使って、ユークリッドの互除法による特殊解の算出から一般解の導出までの標準的な手順を段階的に確認します。
ステップ1:ユークリッドの互除法を実行する
まず、$37$ を $16$ で割り、余りが $1$ になるまで割り算を繰り返します。
① $37 = 16 \times 2 + 5$
② $16 = 5 \times 3 + 1$
ステップ2:余りについて整理し、逆代入する
それぞれの式を「余り=」の形に変形します。
①' $5 = 37 - 16 \times 2$
②' $1 = 16 - 5 \times 3$
②' の式にある「$5$」の部分に、①' の右辺を代入します。
$1 = 16 - (37 - 16 \times 2) \times 3$
$1 = 16 - 37 \times 3 + 16 \times 6$
$1 = 37 \times (-3) + 16 \times 7$
整理すると、$37(-3) + 16(7) = 1$ が得られます。これにより、特殊解の1組が $x = -3, y = 7$ であると判明しました。
ステップ3:元の式との差を取り、一般解を求める
元の式と、特殊解を代入した式を縦に並べて辺々を引きます。
$$\begin{array}{r@{}l} 37x + 16y &{}= 1 \\ {}-) \quad 37(-3) + 16(7) &{}= 1 \\ \hline 37(x + 3) + 16(y - 7) &{}= 0 \end{array}$$
式を変形すると、$37(x + 3) = -16(y - 7)$ となります。
ここで重要な記述ルールがあります。「$37$ と $16$ は互いに素である」という文言を必ず明記してください。この条件があるからこそ、$x + 3$ は $16$ の倍数でなければならず、整数 $k$ を用いて次のように置くことができます。
$x + 3 = 16k \quad \Longrightarrow \quad x = 16k - 3$
これを元の差の式に代入すると、
$37(16k) = -16(y - 7) \quad \Longrightarrow \quad 37k = -(y - 7) \quad \Longrightarrow \quad y = -37k + 7$
以上より、求める一般解は $x = 16k - 3, \quad y = -37k + 7$ ($k$ は整数) となります。
【時短の裏ワザ】共通テストで絶大な効果を発揮する「合同式(mod)」解法
記述式試験では前述の互除法が標準となりますが、マーク式の共通テストや時間制約の厳しい私大入試では、合同式(mod)を用いた特殊解の発見が強力な時短テクニック(裏ワザ)として威力を発揮します。
合同式とは、割り算の「余り」に着目した計算手法です。例として、先ほどの方程式 $37x + 16y = 1$ を、法を小さい方の係数である $16$ として考えます($\pmod{16}$)。
両辺を $\pmod{16}$ で考えると、$16y$ は $16$ の倍数なので $0$ になります。また、$37$ を $16$ で割った余りは $5$ です。
$37x + 16y \equiv 1 \pmod{16}$
$5x \equiv 1 \pmod{16}$
ここで、両辺を何倍かして $x$ の係数を「$16$ で割って余りが $1$ になる数($17, 33$ など)」に近づけます。両辺に $3$ を掛けると、
$15x \equiv 3 \pmod{16}$
$15 \equiv -1 \pmod{16}$ ですから、
$-x \equiv 3 \pmod{16} \quad \Longrightarrow \quad x \equiv -3 \pmod{16}$
これにより、一瞬で $x = -3$ という特殊解候補が得られます。これを元の方程式に代入すれば、
$37(-3) + 16y = 1 \quad \Longrightarrow \quad -111 + 16y = 1 \quad \Longrightarrow \quad 16y = 112 \quad \Longrightarrow \quad y = 7$
このように、互除法の面倒な逆代入を行うことなく、わずか数行の計算で特殊解 $(x, y) = (-3, 7)$ を導出できます。余剰計算に慣れておくと、計算スペースの節約と大幅な時間短縮が可能です。
【発展パターン】3文字の一次不定方程式と応用問題の処理法
入試の応用問題では、変数が3つになった「3文字の一次不定方程式」や、自然数解の個数を問う条件付き問題が頻出します。
1. 3文字の一次不定方程式($ax + by + cz = d$)
3文字の方程式に出会った際の鉄則は、「係数が最大の文字を固定して範囲を絞り込む」または「2文字を1つの塊として扱い、2文字の不定方程式に帰着させる」のいずれかです。
例えば、$x, y, z$ が正の整数(自然数)という条件下で $x + 2y + 5z = 23$ を解く場合、最も係数の大きい $z$ に着目します。$x \ge 1, y \ge 1$ より $x + 2y \ge 3$ であるため、
$5z = 23 - (x + 2y) \le 20 \quad \Longrightarrow \quad z \le 4$
これにより、$z$ の候補は $z = 1, 2, 3, 4$ の4通りに限定されます。あとは各場合について2文字の一次不定方程式を解くだけで済みます。
2. 応用問題:自然数解の個数決定
「$ax + by = c$ を満たす自然数 $(x, y)$ の組はいくつあるか」という問題では、まず前述の手順で一般解($k$ を含む式)を求めた後、不等式条件を連立させます。
$x > 0 \quad \text{かつ} \quad y > 0$
この不等式から整数 $k$ の取り得る範囲を絞り込み、条件を満たす $k$ の個数を数え上げることで、解の組数を正確に決定できます。
【一次不定方程式の問題】に関するよくある質問(FAQ)
Q1:特殊解が自分の出した答えと模範解答で違っていましたが、不正解になりますか?
A1:不正解にはなりません。一次不定方程式の整数解は無数に存在するため、どの1組を特殊解として選んでも問題ありません。例えば、$x = 16k - 3$ という解答は、$k = m + 1$ と置き換えることで $x = 16m + 13$ と表現できます。形が違って見えても、整数全体として同じ集合を表していれば完全正解となります。
Q2:$ax + by = c$ の右辺が $1$ ではない場合(例:$37x + 16y = 3$)はどう解けばよいですか?
A2:まず右辺を $1$ と置いた方程式 $37x + 16y = 1$ の特殊解を求めます。先ほど求めた解は $(x, y) = (-3, 7)$ でした。この等式の両辺を $3$ 倍すると $37(-9) + 16(21) = 3$ となるため、$x = -9, y = 21$ が $37x + 16y = 3$ の特殊解になります。あとは通常通り差を取って一般解を導出します。
Q3:ユークリッドの互除法の逆算でいつも計算ミスをしてしまいます。対策はありますか?
A3:逆代入の際、掛け算を実行せずに「係数×元の数」の形を維持することがミスを防ぐコツです。例えば $(37 - 16 \times 2) \times 3$ を計算する際、$16 \times 2 \times 3$ を $96$ と計算せず、$16 \times 6$ とまとめます。常に「$37$」と「$16$」を1つの文字($A$ や $B$)のように扱って整理すると、符号や数値の混同を劇的に減らせます。
まとめ:確実に得点源とするための演習戦略
一次不定方程式は、一見複雑に見える問題であっても、解法のフレームワークは極めてシステマチックです。「互いに素の確認」「特殊解の導出」「辺々を引いて一般解化」という基本の3ステップが完全に身についていれば、どのような試験でも安定して高得点を狙えます。
まずは教科書レベルの $ax + by = 1$ をユークリッドの互除法を用いて確実に解けるよう手を動かしてください。その後、合同式を活用した別解や、文字の範囲絞り込みを伴う応用問題へと演習の幅を広げていくのが最短の攻略ルートです。計算の確実性を磨き、入試本番での強力な武器に仕上げていきましょう。 (出典: 一次 不定 方程式 問題(Yahoo!ニュース))