제출 #19719

#제출 시각아이디문제언어결과실행 시간메모리
19719kk1401괄호 (kriii4_R)C++98
0 / 100
0 ms8896 KiB
#include<stdio.h>
#define M 1000000007ll

int n;
long long d[1000001],k;

int main()
{
	int i;
	
	scanf("%d%lld",&n,&k);
	
	d[1] = k;
	
	for(i=2; i<=n; i++){
		if(i%2 == 0) d[i] = (d[i-1] * (k + 1ll)) % M;
		else d[i] = ((d[i-1] * k) % M + (d[i-1] - d[(i-1)/2] + M) % M) % M;
	}
	
	printf("%lld\n",d[n]);
	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...