「SHIKEN」の6文字をすべて使ってできる順列を、アルファベット順(辞書式順序)で並べます。EHIKNSを1番目として、以下の問いに答えます。 (1) 140番目の文字列を求めなさい。 (2) SHIKENは何番目の文字列ですか。
2025/5/27
はい、承知いたしました。与えられた問題について、以下の形式で解答します。
1. 問題の内容
「SHIKEN」の6文字をすべて使ってできる順列を、アルファベット順(辞書式順序)で並べます。EHIKNSを1番目として、以下の問いに答えます。
(1) 140番目の文字列を求めなさい。
(2) SHIKENは何番目の文字列ですか。
2. 解き方の手順
(1) 140番目の文字列を求める
6文字EHIKNSを辞書式順に並べたとき、
先頭の文字ごとに場合分けします。
* Eから始まるもの:5! = 120個
* Hから始まるもの:5! = 120個
* Iから始まるもの:5! = 120個
140番目はEから始まる順列の範囲内にあるので、
Eから始まるもののうち、何番目か考えます。
140番目の順列は、Eから始まる順列の中で140 - 0 = 140番目です。
(上の計算は、EHIKNSを1番目としているからです。Eで始まるものは、1番目から120番目なので、実際にはEで始まる順列の1番目から120番目の中に140番目はありません。ですから、この時点で間違いであると気づくべきです。)
正しくは以下の手順です。
まず、EHIKNS をアルファベット順に並べたとき、E, H, I, K, N, S の順になります。
* E から始まる順列:5! = 120 個
* H から始まる順列:5! = 120 個
合計 120 + 120 = 240 個となり、140番目の文字列は、H から始まる文字列の範囲内にあることが分かります。
具体的には、140 - 120 = 20 より、H から始まる文字列の中で、20番目のものを探します。
次に、H の次に続く文字で場合分けします。
* HE から始まる順列:4! = 24 個
* HI から始まる順列:4! = 24 個
20 < 24 なので、求める文字列は HE から始まる順列の範囲内にあり、HEから始まる20番目のものを探します。
次に、HEの次に続く文字で場合分けします。
* HEIから始まる順列:3! = 6 個
* HEKから始まる順列:3! = 6 個
* HENから始まる順列:3! = 6 個
6 + 6 + 6 = 18 < 20 なので、HESから始まる順列の範囲内にあり、HESから始まる (20 - 18) = 2番目のものを探します。
次に、HESの次に続く文字で場合分けします。
* HESIから始まる順列:2! = 2 個
HESIから始まる順列の2番目は、HESIKNです。
したがって、140番目の文字列はHESIKNです。
(2) SHIKENは何番目の文字列か
SHIKENを辞書式順に並べたとき、何番目になるかを求めます。
* E から始まる順列:5! = 120 個
* H から始まる順列:5! = 120 個
* I から始まる順列:5! = 120 個
* K から始まる順列:5! = 120 個
Sより前の文字から始まる順列は、120 * 4 = 480個あります。
* SE から始まる順列:4! = 24 個
* SH から始まる順列:4! = 24 個
SIより前の文字から始まる順列は、24 * 1 = 24個あります。
SIを含む文字をSから始めて3文字目にします。
* SIA から始まる順列:3! = 6 個
* SIE から始まる順列:3! = 6 個
* SIH から始まる順列:3! = 6 個
* SIK から始まる順列:3! = 6 個
SINより前の文字から始まる順列は、6 * 0 = 0個あります。
SINを含む文字をSから始めて4文字目にします。
* SINE から始まる順列:2! = 2 個
* SINH から始まる順列:2! = 2 個
SINより前の文字から始まる順列は、2 * 0 = 0個あります。
SINHを含む文字をSから始めて5文字目にします。
SHIKENより前の文字から始まる順列は、0 * 1 = 0個あります。
SINH から始まる順列:2! = 2 個
SINHEK, SINHKF, SINHIK, SINHIS
SIKENの順列は、 SINHEKの次なので数えると、2個です。
SINEKH, SINEK
SIKENの順列は、 SINHIKの次なので数えると、2個です。
したがって、SHIKEN は、480 + 0 + 24 + 0 + 2 + 0 + 2 = 608 + 1 + 2 = 608 + 3 = 508番目になります。
合計: 480 + 24 + 6 + 2 + 1 = 513番目
よって、SHIKENは 513 番目です。
3. 最終的な答え
(1) 140番目の文字列:HESIKN
(2) SHIKEN:513番目