投稿者:山中和義
投稿日:2016年 4月 8日(金)07時36分50秒
|
|
|
> No.4029[元記事へ]
> また、122333番目に出現する数字の並びを求めよ。
桁数でまとめると(群数列)、
1,2,3 1桁の場合は、3個 0,1,2に対応する
11,12,13,21,22,23,31,32,33 2桁の場合は、3^2=9個 00,01,02,10,11,12,20,21,22に対応する
111,112,113,… 3桁の場合は、3^3=27個 000,001,002,…に対応する
:
これより、k桁の場合は、3^k個のk桁の3進法表記に対応する。
何桁の何番目の並びになるか求めればよい。
LET N=122333
LET X=N !k桁のx番目
LET K=1 !桁数
LET T=3
DO WHILE X-T>0
LET X=X-T
LET K=K+1
LET T=T*3
LOOP
PRINT K;X
LET T=X-1 !対応する3進法の並びを生成する ※下の位から
FOR i=1 TO K
PRINT MOD(T,3)+1; !k桁の先頭の並びを加味する
LET T=INT(T/3)
NEXT i
END
|
|
|