創作パズルに必要

 投稿者:GAI  投稿日:2009年12月31日(木)11時40分17秒
  n個の異なる数字を全て使って並べてn桁の整数を作り、小さい順に並べたとする時、
一般にk番目に並ぶ順列が何になるかや、
逆に指定の整数が何番目に並んでいるかを計算するためにfactorial base(factoradic?)
と言う表記法が有効であると読んだ。
例:47=1*4!+3*3!+2*2!+1*1!
これより47の表記を
1(4)3(3)2(2)1(1)
などと表すことにする。

n: f(n)
0  0
1  1
2  10
3  11
4  20
5  21
6  100
7  101
8  110
9  111
10 120
11 121
12 200
13 201
14 210
15 211
16 220
17 221
18 300
19 301
20 310
21 311
22 320
23 321
24 1000
・・・・
などなど

n(少なくとも10桁でも可能であるようにしてもらいたい。)
を入力したら、そのfactoradicでの表記が出力されるようにお願いしたい。
よろしくお願いします。
 

Re: 創作パズルに必要

 投稿者:山中和義  投稿日:2009年12月31日(木)12時07分7秒
  > No.956[元記事へ]

GAIさんへのお返事です。


配列A()は、 1(4!),3(3!),2(2!),1(1!),0(0!) の順で表示されます。
 

戻る