比赛 |
20111108 |
评测结果 |
AAAWWWWWWW |
题目名称 |
分裂 |
最终得分 |
30 |
用户昵称 |
Truth.Cirno |
运行时间 |
0.000 s |
代码语言 |
C++ |
内存使用 |
0.00 MiB |
提交时间 |
2011-11-08 10:15:59 |
显示代码纯文本
#include <cstdio>
#include <iostream>
#include <memory.h>
using namespace std;
int num[2][10002]={0};
long long total[10001]={0,1};
int main(void)
{
freopen("mushroom.in","r",stdin);
freopen("mushroom.out","w",stdout);
int i,j,n;
bool now=true,last=false;
scanf("%d\n",&n);
num[0][2]=1;
for (i=2;i<=n;i++)
{
now=!last;
memset(num[now],0,sizeof(num[now]));
total[i]=total[i-1]*2;
num[now][2]=num[last][1];
total[i]-=num[last][1];
for (j=2;j<=i+1;j++)
{
num[now][j-1]+=num[last][j];
num[now][j+1]+=num[last][j];
}
last=now;
}
cout<<total[n]<<endl;
fclose(stdin);
fclose(stdout);
return(0);
}