回复 4# realnumber
想了想其实写通式也不是很麻烦,也就两类情况。
求不超过 `\overline{a_1a_2\cdots a_n}`(`n\leqslant10`)的美丽整数个数。
记 `b_k` 为 `a_1` 至 `a_{k-1}` 当中小于 `a_k` 的个数(比如我在 3# 举的例子 `62485` 有 `b_2=0`, `b_3=1`, `b_4=3`, `b_5=2`)。
(1)若 `\overline{a_1a_2\cdots a_n}` 本身就是美丽整数,则所求个数为
\begin{align*}
&9(1+A_9^1+A_9^2+\cdots+A_9^{n-2})+(a_1-1)A_9^{n-1}\\
{}+{}&(a_2-b_2)A_8^{n-2}+(a_3-b_3)A_7^{n-3}+\cdots+(a_{n-1}-b_{n-1})A_{11-n}^1+a_n-b_n+1;
\end{align*}
(2)若 `\overline{a_1a_2\cdots a_n}` 不是美丽整数,设其在第 `m` 位首次出现重复数字(比如 `62685` 为 `m=3`),则所求个数为
\begin{align*}
&9(1+A_9^1+A_9^2+\cdots+A_9^{n-2})+(a_1-1)A_9^{n-1}\\
{}+{}&(a_2-b_2)A_8^{n-2}+(a_3-b_3)A_7^{n-3}+\cdots+(a_m-b_m)A_{10-m}^{n-m}.
\end{align*} |