共1 m個n進製數,其中含有數字q(1 q n 1)的數有幾個?

時間 2021-06-12 12:55:48

1樓:

首先,先求出 位數中含 的個數

含有 個 的個數: ,所以總共有 個.

回到原題

當 中不含 時

首先,從 開始,每 個數就有乙個含 的數出現,這個情況有 種.

然後,從 開始,每 個數就有 個含 的數出現,這個情況有 種.

然而這 個含 的數中,有 個重複的,所以共 種.

從 開始,每 個數就有 個含 的數出現,其中重複的有 個.

共 種.

如此,設 是滿足 的最大正整數,則含 的數共有種.當 中含有 時

先縮小 至不含有 ,再將計算縮小的範圍即可.

設 是小於 且不含 的最大正整數,

那麼在 中含 的數有 個.

以前的答案:

先把 寫成 進製數,設它有 位,各位數分別為 .

此時考慮首位為 的 位數( 為首位即少一位),這些數中含 的有 個然後,為了計算首位為 而又小於 含 的個數,問題又變成了 到 中含 的個數.

和上面的情況大同小異,但這時含 的個數直接等於此時考慮首位為 的數,含有 的個數為

然後,首位為 的數共有 個

然後,計算首位為 ,小於 且含 的個數,問題變為 到 中含 的個數.

綜上,引入數列 ,滿足 ,

即答案.

2樓:許仙

先指出個錯誤 q不能等於n

先將m寫成n進製。比如有k位。

觀察首位是否大於等於q,若是則先求首位為q,後面任意寫的k位數,有n的k-1比方個。如果首位<q,直接下一步。

現在寫出首位為q,後面任意寫的k-1位數,有n的k-2次方個,然後再此基礎上,在q前面寫非q的數,修改後數不要超過m,求出這些數的個數。

現在寫出首位為q,後面任意寫的k-2位數,有n的k-3次方個,然後再此基礎上,在q前面寫不含q的兩個數,修改後的數不要超過m,求出這些數的個數。再在q開頭的k-2位數基礎上,前面寫上一位非q的數,求出這些數的個數。

以此類推,可得所有含q的數。

把所有個數相加即可。

程式設計可完成此工作!

如果把乙個數m拆成n個數a1,a2,a3 an之和,使它們相乘達到最大,該怎麼拆?

陳浩 第乙個問題,動態規劃 public int IntegerBreak int nint cache new int n 1cache 1 1for int i 2 i n ifor int j 1 j i 2 jcache i Math.Max cache i cache j cache i ...

從自然數 1 n 中隨機取 m(1 m n)個,其中最大數的數學期望是多少?

一寸會 強答設所選數最大值為隨機變數X X的所有取值為m,m 1,m 2,n.基本事件總數為C m,n P X i C m 1,i 1 C m,n E X i P X i 求和 m C m,i C m,n 求和 C m 1,n 1 m C m,n m 1 m n 1 土方 果然知乎牛人多。其實在問這...

將自然數 1, 2, 3 ,n 2 1打亂,按順序取n 1個數,如何證明這n 1個數能夠遞增或遞減?

反射序數 假設a m,b m分別是從第m個數x m做起始點出發,能夠找到的最長的遞增鏈和遞降鏈的長度。設sa t。因為x t出發的最長遞增鏈可以在左邊補上x s得到x s出發的更長遞增鏈。同理,若x s x t,則b s b t。因此陣列 a m,b m 對不同的m互不相同。若所有的a m,b m都...