bzoj1925地精部落

代码:#include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
using namespace std;
int f[2][4201],n,p;
void init(){
scanf("%d%d",&n,&p);
}


void dp(){
memset(f,0,sizeof(f));
f[1][1]=1;
for (int i=2;i<=n;i++)
 for (int j=1;j<=n;j++){
   int t=i&1;
   f[t][j]=(f[t][j-1]+f[t^1][i-j])%p;
 }
}


int main(){
init();
dp();
if (n==1) puts("1");
else printf("%d",2*f[n&1][n]%p);
return 0;
}

你可能感兴趣的:(bzoj1925地精部落)