京都大学 2017年 文系 第2問 解説

方針・初手
- 「〇〇以外の素因数を持たない」自然数は、指定された素数の非負整数乗の積として表すことができます。
- (1) は $2^n\ (n \geq 0)$、(2) は $2^a \cdot 5^b\ (a \geq 0,\ b \geq 0)$ と設定し、それらが指定された桁数となるような変数の組の個数を求めます。
- 桁数の条件は、常用対数をとることで不等式に帰着させます。(2) では変数が $a,\ b$ の2つ現れますが、$2 \times 5 = 10$ を利用して式を整理するか、変数を一つに固定する工夫が必要です。
解法1
(1)
100 桁以下の自然数で、2 以外の素因数を持たないものを $N$ とする。
自然数 1 は素因数を持たず条件を満たすため、$N$ は 0 以上の整数 $n$ を用いて $N = 2^n$ と表される。
$N$ が 100 桁以下である条件は、$N < 10^{100}$ であるから、
$$ 2^n < 10^{100} $$
両辺の常用対数をとると、
$$ n\log_{10}2 < 100 \implies n < \frac{100}{\log_{10}2} $$
与えられた条件 $0.3010 < \log_{10}2 < 0.3011$ より、
$$ \frac{100}{0.3011} < \frac{100}{\log_{10}2} < \frac{100}{0.3010} $$
ここで、$\dfrac{100}{0.3011} = 332.1\cdots$ であり、$\dfrac{100}{0.3010} = 332.2\cdots$ であるため、
$$ 332.1\cdots < \frac{100}{\log_{10}2} < 332.2\cdots $$
したがって、$n$ は整数であるから $n \leq 332$ であり、これを満たす $0$ 以上の整数 $n$ は $0 \leq n \leq 332$ の範囲にあり、その個数は 333 個 である。
(2)
100 桁の自然数で、2 と 5 以外の素因数を持たないものを $N$ とする。
$N$ は 0 以上の整数 $a,\ b$ を用いて $N = 2^a \cdot 5^b$ と表される。
$N$ がちょうど 100 桁である条件は、
$$ 10^{99} \leq N < 10^{100} $$
各辺の常用対数をとると、
$$ 99 \leq a\log_{10}2 + b\log_{10}5 < 100 $$
$\log_{10}5 = \log_{10}\dfrac{10}{2} = 1 - \log_{10}2$ であるから、
$$ 99 \leq a\log_{10}2 + b(1-\log_{10}2) < 100 \implies 99 \leq b + (a-b)\log_{10}2 < 100 $$
ここで、$c = a - b$ とおくと、$c$ は整数であり、
$$ 99 - c\log_{10}2 \leq b < 100 - c\log_{10}2 \quad \cdots (*) $$
区間 $[99 - c\log_{10}2,\ 100 - c\log_{10}2)$ は幅が 1 の半開区間である。
端点が整数になるのは $c = 0$ のときのみ(このとき区間は $[99, 100)$ となり $b = 99$ が一意に決まる)であり、$c \neq 0$ のときは端点は整数とならない。
したがって、任意の整数 $c$ に対して、条件 $(*)$ を満たす整数 $b$ はただ 1 つ存在する。
$b$ と $c$ が決まれば、$a = b + c$ により整数 $a$ もただ 1 つ定まるため、条件を満たす組 $(a,\ b)$ の個数は、条件 $a \geq 0,\ b \geq 0$ を満たすような整数 $c$ の個数に等しい。
(i) $b \geq 0$ となる条件
$b$ は幅 1 の区間内に存在する唯一の整数であるから、$b \geq 0$ となるためには区間の上限が正であればよい。
$$ 100 - c\log_{10}2 > 0 \implies c < \frac{100}{\log_{10}2} $$
(1) の計算より $c \leq 332$。
(ii) $a \geq 0$ となる条件
$a = b + c$ であるから、$(*)$ の各辺に $c$ を加えると、
$$ 99 + c(1-\log_{10}2) \leq a < 100 + c(1-\log_{10}2) $$
同様に、区間の上限が正であればよいので、
$$ 100 + c(1-\log_{10}2) > 0 \implies c > -\frac{100}{1-\log_{10}2} = -\frac{100}{\log_{10}5} $$
ここで $1 - \log_{10}2$ は $\log_{10}5$ であり、$0.6989 < \log_{10}5 < 0.6990$ であるから、
$$ \frac{100}{0.6990} < \frac{100}{\log_{10}5} < \frac{100}{0.6989} \implies 143.0\cdots < \frac{100}{\log_{10}5} < 143.0\cdots $$
よって、$c \geq -143$。
(i), (ii) より、$-143 \leq c \leq 332$ を満たす整数 $c$ の個数が求める個数であるから、
$$ 332 - (-143) + 1 = \mathbf{476\ \text{個}} $$
解法2
(2) の別解
$N = 2^a \cdot 5^b\ (a \geq 0,\ b \geq 0)$ において、$a$ と $b$ の大小で場合分けをする。
(i) $a \geq b$ のとき
$N = 2^{a-b} \cdot (2 \cdot 5)^b = 2^{a-b} \cdot 10^b$ と表せる。
$N$ が 100 桁であるから、$2^{a-b}$ の桁数を $m$ とすると、$N$ の桁数は $m + b$ となる。
すなわち、$m + b = 100 \iff b = 100 - m$。
$b \geq 0$ であるから $m \leq 100$。
$c = a - b\ (c \geq 0)$ とおくと、$2^c$ は 100 桁以下の自然数となる。
逆に、$2^c\ (c \geq 0)$ が $m$ 桁であるとき、$b = 100 - m$ と定めれば、$N$ は条件を満たす 100 桁の自然数となり、$b$ から $a$ も一意に定まる。
したがって、このような組 $(a,\ b)$ の個数は、100 桁以下の $2^c\ (c \geq 0)$ の個数に等しい。
(1) より、これは 333 個 である。
(ii) $a < b$ のとき
$N = 5^{b-a} \cdot (2 \cdot 5)^a = 5^{b-a} \cdot 10^a$ と表せる。
同様に、$5^{b-a}$ の桁数を $m$ とすると、$a = 100 - m$(ただし $m \leq 100$)。
$c = b - a\ (c > 0)$ とおくと、$5^c$ は 100 桁以下の自然数となる。
このような組 $(a,\ b)$ の個数は、100 桁以下の $5^c\ (c > 0)$ の個数に等しい。
$5^c < 10^{100}$ より、
$$ c\log_{10}5 < 100 \implies c < \frac{100}{\log_{10}5} $$
$0.6989 < \log_{10}5 < 0.6990$ より、
$$ 143.0\cdots < \frac{100}{\log_{10}5} < 143.0\cdots $$
より正確には $\dfrac{100}{0.6990} = 143.06\cdots$ であるから、
$$ c \leq 143 $$
$c > 0$ より $1 \leq c \leq 143$ の 143 個。
(i), (ii) は排反であるから、求める個数は
$$ 333 + 143 = \mathbf{476\ \text{個}} $$
解説
「2以外の素因数を持たない」という条件に、素因数を全く持たない自然数 1(すなわち $2^0$)が含まれるかどうかが最初のポイントです。「ある素数 $p$ が $N$ を割り切るならば、$p = 2$ である」という命題を考えると、$N = 1$ のときは前提を満たす素数 $p$ が存在しないため命題は真となります。したがって 1 を含めるのが数学的に正確な解釈です。
(2) については、解法1の同値変形によって「幅 1 の半開区間にはただ 1 つの整数が存在する」という論理を利用する方法と、解法2の $2 \times 5 = 10$ に着目して 10 の累乗をくくり出す方法があります。解法2の方が直感的で立式しやすく、計算の見通しも良いため、試験本番では非常に有効なアプローチと言えます。
答え
(1)
333 個
(2)
476 個
自分の記録
誤りを報告
解説の誤り、誤字、表示崩れに気づいた場合は送信してください。ログイン不要です。











