洛谷P1062(數列)

2021-09-26 08:16:58 字數 794 閱讀 5305

題目:給定乙個正整數k(3≤k≤15),把所有k的方冪及所有有限個互不相等的k的方冪之和構成乙個遞增的序列,例如,當k=3時,這個序列是:

1,3,4,9,10,12,13,…

即3^0, 3^1, 3^0+ 3^1 ,3^2, 3^0+ 3^2, 3^1+ 3^2, 3^0+ 3^1+ 3^2 …

請你求出這個序列的第n項的值(用10進製數表示)。

例如,對於k=3,n=100,正確答案應該是981。

此題乍一看之下是乙個關於方冪和方冪之間的和的排列問題,有些小夥伴可能會想到每個方冪之間插入的數為2^n-1會以此作為依據計算,但是會牽扯到乙個問題就是很難算出具體的是那些相加但是可以很容易算出實在多少次方和多少次方之間,再次掠過這種做法

正解:,這是一道比較巧妙的數論的題,以例子來說 1,3,4,9,10,12,13的三進製數分別為,1,10,11,100,101,110,111

這些數在二進位制下的值分別為 1,2,3,4,5,6所以此題可以將n先進行二進位制轉換然後再根據k進製轉換成10進製即為最終答案

**:

#include#include#include#includeusing namespace std;

typedef long long ll;

int k, n;

vectora;

int main()

ll ans=0;

for (int i = 0; i < a.size(); i++)

cout << ans << endl;

return 0;

}

洛谷p1062 數列

給定乙個正整數k 3 k 15 把所有k的方冪及所有有限個互不相等的k的方冪之和構成乙個遞增的序列,例如,當k 3時,這個序列是 1,3,4,9,10,12,13,該序列實際上就是 3 0,3 1,3 0 3 1,3 2,3 0 3 2,3 1 3 2,3 0 3 1 3 2,請你求出這個序列的第n...

洛谷 P1062 數列

給定乙個正整數k 3 k 15 把所有k的方冪及所有有限個互不相等的k的方冪之和構成乙個遞增的序列,例如,當k 3時,這個序列是 1,3,4,9,10,12,13,該序列實際上就是 3 0,3 1,3 0 3 1,3 2,3 0 3 2,3 1 3 2,3 0 3 1 3 2,請你求出這個序列的第n...

數論 洛谷 P1062 數列

給定乙個正整數k 3 k 15 把所有k的方冪及所有有限個互不相等的k的方冪之和構成乙個遞增的序列,例如,當k 3時,這個序列是 1,3,4,9,10,12,13,該序列實際上就是 3 0,3 1,3 0 3 1,3 2,3 0 3 2,3 1 3 2,3 0 3 1 3 2,請你求出這個序列的第n...