0
已解决
乔俊驰
资深守护
资深守护
千算万算都是0
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<string>
using namespace std;
int a[25][2],n,i=2;
int f(int n){
if(i==n){
return a[n][0];
}
a[i][0]=(a[i-1][0]*9+a[i-1][1])%100007;
a[i][1]=(a[i-1][0]+a[i-1][1]*9)%100007;
i++;
return f(n);
}
int main()
{
cin>>n;
a[1][0]=8,a[1][1]=1;
cout<<f(n);
return 0;
}
0
已采纳
张帆
中级天翼
中级天翼
int f(int i,int j)
{
if(jyh[i][j]>0) return jyh[i][j];
if(i==1&&j==0) return 8;
if(i==1&&j==1) return 1;
if(j==0){
jyh[i][j]=(f(i-1,0)*9+f(i-1,1))%100007;
return jyh[i][j];
} else {
jyh[i][j]=(f(i-1,1)*9+f(i-1,0))%100007;
return jyh[i][j];
}
}
结果是
sum+=f(n-i,0);
sum%=100007;