代码:
#include
#include
#include
#include
using namespace std;
typedef long long LL;
const int MAXN=50000+5;
const int MOD=1e9+7;
LL a[20][MAXN][20];
LL solve(int k,int n,int p){
LL ret=0;
LL cnt=0;
for(int i=8;i<16;++i) if(i%k==1) ++cnt;
n-=3;
for(int i=0;i<=n;++i){
(ret+=cnt*a[k][i][p])%=MOD;、
(p<<=1)%=k;
}
return ret;
}
int main(){
for(int k=2;k<15;++k){
LL ret=1;
for(int i=0;i=15){
puts("0");
continue;
}
--n;
p%=k;
printf("%lld\n",solve(k,n,p));
}
}
#include
#include
#include
#include
#include
using namespace std;
#define MP make_pair
typedef long long LL;
typedef pair P;
const int MAXN=5e4+5;
const int MOD=1e9+7;
int limk=8,limi=8;
int a[13][MAXN][14];
LL ans[13][MAXN][14];
int main(){
for(int k=2;k<15;++k){
a[k-2][0][1]=1;
for(int i=0;i=15){
puts("0");
continue;
}
--n;
printf("%lld\n",ans[k-2][n][p%k]);
}
}