/* 1344. 数列(根据规律生成数列)
规律: 以k的方幂为分割点,分割点之间的数字等于
= k^i(i次幂) + a[x] (x为1 -- k次幂分割点的前一位squreIndex-1)
*/
#include <iostream>
#include <stdlib.h>
#include <math.h>
using namespace std;
int main(){
int a[1001];
int k, N;
while(cin >> k >> N){
int num = 0;
int i=0;
while(num < N){
long long temp = (long long)pow((double)k, i);
num++;
a[num] = temp;
if(num == N)
{
cout << temp << endl;
break;
}
int squreIndex = num;
for(int k=1; k<=squreIndex-1; k++){
temp = a[squreIndex] + a[k];
num++;
a[num] = temp;
if(num == N){
cout << temp << endl;
break;
}
}
i++;
}
}
system("pause");
return 0;
}
1344. 数列(根据规律生成数列)
最新推荐文章于 2023-12-03 22:57:34 发布