【BZOJ1087】【SCOI2005】互不侵犯
来源:互联网 发布:北京sem优化师 编辑:程序博客网 时间:2024/05/16 01:23
题面
这种傻逼题懒得粘贴了。。。
题解
傻逼题
暴力判断状态合法性,暴力判断转移合法性,然后统计答案
#include<iostream>#include<cstdio>#include<cstdlib>#include<cstring>#include<cmath>#include<algorithm>#include<set>#include<map>#include<vector>#include<queue>using namespace std;inline int read(){ int x=0,t=1;char ch=getchar(); while((ch<'0'||ch>'9')&&ch!='-')ch=getchar(); if(ch=='-')t=-1,ch=getchar(); while(ch<='9'&&ch>='0')x=x*10+ch-48,ch=getchar(); return x*t;}int N,K;long long f[10][1<<9][101];int main(){ N=read();K=read(); f[0][0][0]=1; for(int i=1;i<=N;++i) for(int j=0;j<(1<<N);++j) for(int k=0;k<(1<<N);++k) { if(k&j)continue; if(k&(j>>1))continue; if(k&(j<<1))continue; if(j&(j<<1))continue; if(j&(j>>1))continue; if(k&(k>>1))continue; if(k&(k<<1))continue; int gg=k,tot=0; while(gg)tot++,gg-=gg&(-gg); for(int l=0;l<=K-tot;++l) f[i][k][l+tot]+=f[i-1][j][l]; } long long ans=0; for(int i=0;i<(1<<N);++i) ans+=f[N][i][K]; cout<<ans<<endl; return 0;}
阅读全文
1 0
- 【BZOJ1087 || SCOI2005】互不侵犯King
- [BZOJ1087][SCOI2005]互不侵犯King
- 【bzoj1087】[SCOI2005]互不侵犯King
- 【SCOI2005】【BZOJ1087】互不侵犯King
- [BZOJ1087] [SCOI2005]互不侵犯King
- bzoj1087【SCOI2005】互不侵犯King
- bzoj1087: [SCOI2005]互不侵犯King
- bzoj1087: [SCOI2005]互不侵犯King
- bzoj1087[SCOI2005]互不侵犯King
- 【bzoj1087】[SCOI2005]互不侵犯King
- [BZOJ1087][SCOI2005]互不侵犯king
- bzoj1087: [SCOI2005]互不侵犯King
- bzoj1087: [SCOI2005]互不侵犯King
- BZOJ1087: [SCOI2005]互不侵犯King
- bzoj1087[SCOI2005]互不侵犯King
- [BZOJ1087][SCOI2005]互不侵犯King
- [BZOJ1087][SCOI2005]互不侵犯King
- bzoj1087 [SCOI2005]互不侵犯King
- android 设置Button或者ImageButton的背景透明
- 类 手机
- 编写程序,用0-1之间的随机数来模拟扔硬币试验,统计扔1000次后出现正反面的次数并输出。
- StatelistDrawable 状态选择器失灵
- UVA10891(区间DP)
- 【BZOJ1087】【SCOI2005】互不侵犯
- 第一次写
- OSPF协议
- Java中System.arraycopy()和Arrays.copyOf()的区别
- MySQL :=与=的区别通过排名示例
- mybatis插入数据返回主键
- MySQL函数大全及用法示例
- openCV库cv2的使用
- 任意次方后的最后三位数