bzoj 1087 题解
来源:互联网 发布:淘宝职业退货师被抓 编辑:程序博客网 时间:2024/05/16 11:03
状态压缩的dp
Code:
/************************************************************** Problem: 1087 User: wohenshuai Language: C++ Result: Accepted Time:120 ms Memory:19344 kb****************************************************************/ #include<cstdio>#include<iostream>#include<cstring>#include<algorithm>#define LL unsigned long longusing namespace std;LL bit[1100];LL n,m;void Input(){ scanf("%lld%lld",&n,&m); for(LL i=1;i<=n+1;i++) bit[i]=1<<(i-1);}LL ans;LL cnt[1100]; LL len;LL f[1100][1100];LL Count[1100];void Print(){ len=0; memset(cnt,0,sizeof(cnt)); memset(f,0,sizeof(f)); for(LL i=0;i<bit[n+1];i++) { bool bk=true; for(LL j=2;j<n;j++) { LL dx,dy,dz; dx=(i&bit[j-1]); dy=(i&bit[j]); dz=(i&bit[j+1]); if(((dx==bit[j-1])&(dy==bit[j]))||((dy==bit[j])&(dz==bit[j+1]))) { bk=false; break; } } if(bk==true) { cnt[++len]=i; for(LL j=1;j<=n;j++) if((i&bit[j])==bit[j]) Count[len]++; } } for(LL i=1;i<=len;i++) { for(LL j=1;j<=len;j++) { if((!(cnt[i]&cnt[j]))&&(!(cnt[i]&(cnt[j]<<1)))&&(!(cnt[i]&(cnt[j]>>1)))) { f[i][j]=1; } } }}LL dp[10][100][1100];LL Dp(){ for(LL i=1;i<=len;i++) dp[1][Count[i]][i]+=1; for(LL i=2;i<=n;i++) { for(LL j=1;j<=len;j++) { for(LL k=1;k<=len;k++) { if(f[j][k]) { for(LL p=0;p<=m;p++) dp[i][p+Count[k]][k]+=dp[i-1][p][j]; } } } } LL ans=0; for(LL i=1;i<=len;i++) ans+=dp[n][m][i]; return ans;}void Solve(){ Print(); printf("%lld\n",Dp());}int main(){ Input(); Solve(); return 0;}
0 0
- bzoj 1087 题解
- bzoj题解
- bzoj 1087 [SCOI2005] 互不侵犯King 题解
- bzoj 1218题解
- bzoj 2456 mode 题解
- bzoj 2506 calc 题解
- BZOJ 1257 (题解)
- bzoj 1003 题解
- bzoj 1053 题解
- bzoj 2761 题解
- bzoj 2464 题解
- bzoj 1085 题解
- bzoj 2464 题解
- bzoj 1045 题解
- bzoj 1059 题解
- bzoj 1054 题解
- bzoj 1050 题解
- bzoj 1047 题解
- 改进你的网页
- 二维数组寻找鞍点
- 安卓保存图片到SD卡,使用byte流
- 1、欢迎使用Swift来编写iOS项目
- 中文标点符号unicode码
- bzoj 1087 题解
- guava-IO使用
- 第一、二章
- 可执行文件的装载与执行
- 网页开发的6种在线调试环境
- 转载大神IOS开发系列【8】--UITableView全面解析
- mongodb学习1-安装、部署、shell
- Disruptor Ring Buffer as a Blocking Queue
- Ubuntu下软件无法下载或更新以及SDK无法更新的情况解决