POJ 3279 (枚举+二进制)
来源:互联网 发布:淘宝上买卫生巾靠谱吗 编辑:程序博客网 时间:2024/05/21 21:49
还是不是很懂呀!
#include<cstdio>#include<cstring>#define maxn 30int gragh[maxn][maxn];int ans[maxn][maxn];int temp[maxn][maxn];int dir[5][2] = {{1,0},{-1,0},{0,0},{0,1},{0,-1}};int step;int n,m;int press(int x,int y){ int c = gragh[x][y]; for(int i = 0;i < 5; i++){ int dx = dir[i][0] + x; int dy = dir[i][1] + y; if(dx >= 0 && dx < n && dy >= 0 && dy < m){ c += temp[dx][dy]; } } return c%2;}int judge(){ int pos = 0; for(int i = 1;i < n; i++){ for(int j = 0;j < m; j++){ if(press(i-1,j)) temp[i][j] = 1; } } for(int i = 0;i < m; i++) if(press(n-1,i)) return -1; for(int i = 0;i < n; i++){ for(int j = 0;j < m; j++) pos += temp[i][j]; } return pos;}int main(){ //freopen("in.txt","r",stdin); while(scanf("%d%d",&n,&m) != EOF){ for(int i = 0;i < n; i++){ for(int j = 0;j < m; j++){ scanf("%d",&gragh[i][j]); } } step = 99999999; memset(temp,0,sizeof(temp)); memset(ans,0,sizeof(ans)); for(int i = 0;i < (1<<m);i++){ memset(temp,0,sizeof(temp)); for(int j=0;j<m;j++) temp[0][m-j-1] = i>>j&1; int t = judge(); if(t < step && t != -1){ step = t; memcpy(ans,temp,sizeof(temp)); } } if(step == 99999999){ printf("IMPOSSIBLE\n"); } else{ for(int i = 0;i < n; i++){ for(int j = 0;j < m; j++){ if(j == m-1) printf("%d\n",ans[i][j]); else printf("%d ",ans[i][j]); } } } } return 0;}
0 0
- POJ 3279 (枚举+二进制)
- POJ 3279二进制枚举
- poj--3279(二进制压缩枚举)
- POJ 3279 Fliptile 反转 (二进制枚举)
- poj 3279 Fliptile 二进制枚举
- 【POJ】3279 Fliptile(十字变换搜索+二进制枚举)
- POJ.3279 Fliptile (搜索+二进制枚举+开关问题)
- POJ 3279 Fliptile (二进制枚举+模拟)
- POJ -3279 Fliptile (二进制转换,枚举每行)
- POJ 3279 Fliptile(二进制枚举暴力)
- Flip Game (poj 1753)枚举+二进制
- POJ 2436 二进制枚举
- POJ 1753 枚举二进制+BFS
- poj 3977 折半枚举+二进制枚举+二分
- POJ 1873 The Fortified Forest(二进制枚举+凸包)
- hdu1796(二进制枚举)
- poj 1416 Shredding Company 二进制枚举
- hdu 3118(二进制枚举)
- iOS开发过程中H5与OC的交互
- Android 仿微信点赞和评论弹出框
- 103. Binary Tree Zigzag Level Order Traversal
- Python 单元测试:assertTrue 和assertFalse 的真假
- 微软面试题
- POJ 3279 (枚举+二进制)
- C++返回引用
- C标准库函数-字符串复制和字节复制函数
- 创建pycharm的自定义python模板
- 【总结Ⅰ】CI开发文档
- C++的函数模板和类模板理解
- poj_3414 Pots(bfs)
- 希尔排序和插入排序
- Hbiernate进阶 (10)双向关系优点