高校数学の質問スレ(医者・東大卒専用) Part438 (752レス)
1-

346: 2024/11/30(土)14:45 ID:L4mkprla(3/6) AAS
b進法、n桁のカプレカ数を求めるように拡張

(* b進法でn桁のカプレカ数を返す b <= 36 *)
solve[b_,n_]:=(
dec2n[x_] :=(
r=List@Mod[x,b];
q=Floor[x/b];
While[q > 0,PrependTo[r,Mod[q,b]];q=Floor[q/b]];
r
);

DigitsInteger[x_] :=(
le=Length@x;
Table[(Reverse@x)[[i]]*b^(i-1),{i,1,le}]//Total
);

digits=Flatten@{Range[0,9],Alphabet[]};
s=ResourceFunction["OrderlessCombinations"][digits[[Range[1,b]]],{n}];

KaprekarBinQ[x_]:=(
d=DigitsInteger@ReverseSort@x - DigitsInteger@Sort@x;
lid=dec2n[d];
DigitsInteger@ReverseSort@lid - DigitsInteger@Sort@lid == DigitsInteger@lid && d!=0
);

re=Select[s,KaprekarBinQ];
ans10=Union@(DigitsInteger@ReverseSort@# - DigitsInteger@Sort@# & /@ re);
ans2=dec2n /@ ans10;
ans3=Table[digits[[i]],{i,ans2+1}];
Le=Length[ans3];
Table[StringJoin @ (ToString /@ ans3[[i]]),{i,1,Le}]
)

solve[2,10]
solve[16,6]
1-
あと 406 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.007s