POJ1222-EXTENDED LIGHTS OUT
来源:互联网 发布:java经典教材 编辑:程序博客网 时间:2024/05/30 04:10
反转开关问题,枚举第一行的状态然后从第二行开始翻转即可。
#include <cstdio>#include <cstring>const int dx[] = {-1, 0, 0, 0, 1};const int dy[] = {0, -1, 0, 1, 0};int map[8][8];int f[8][8];int get(int x, int y) { int c = map[x][y]; for (int i = 0; i < 5; i++) { int nx = x + dx[i]; int ny = y + dy[i]; if (nx >= 0 && nx < 5 && ny >= 0 && ny < 6) { c += f[nx][ny]; } } return c % 2;}bool calc() { for (int i = 1; i < 5; i++) { for (int j = 0; j < 6; j++) { if (get(i-1, j) == 1) { f[i][j] = 1; } } } for (int j = 0; j < 6; j++) { if (get(4, j) == 1) { return false; } } return true;}int main(int argc, char const *argv[]) { int t; scanf("%d", &t); for (int c = 0; c < t; c++) { for (int i = 0; i < 5; i++) { for (int j = 0; j < 6; j++) { scanf("%d", &map[i][j]); } } for (int i = 0; i < 1 << 6; i++) { memset(f, 0, sizeof(f)); for (int j = 0; j < 6; j++) { f[0][6-j-1] = i >> j & 1; } if (calc()) { printf("PUZZLE #%d\n", c+1); for (int i = 0; i < 5; i++) { for (int j = 0; j < 6; j++) { if (j) { putchar(' '); } printf("%d", f[i][j]); } putchar('\n'); } break; } } } return 0;}
0 0
- poj1222 EXTENDED LIGHTS OUT
- POJ1222 EXTENDED LIGHTS OUT
- Poj1222 EXTENDED LIGHTS OUT
- POJ1222-EXTENDED LIGHTS OUT
- POJ1222-EXTENDED LIGHTS OUT
- poj1222 EXTENDED LIGHTS OUT
- poj1222 EXTENDED LIGHTS OUT
- poj1222 EXTENDED LIGHTS OUT 高斯消元
- poj1222--EXTENDED LIGHTS OUT(高斯消元)
- POJ1222 EXTENDED LIGHTS OUT 高斯消元
- POJ1222 EXTENDED LIGHTS OUT【高斯消元】
- POJ1222 EXTENDED LIGHTS OUT 高斯消元
- poj1222 EXTENDED LIGHTS OUT 【高斯消元】
- poj1222 EXTENDED LIGHTS OUT (高斯消元)
- POJ1222-EXTENDED LIGHTS OUT-反转
- 0716 POJ1222 EXTENDED LIGHTS OUT
- 【poj1222】EXTENDED LIGHTS OUT 模拟
- poj1222||zoj 1354 Extended Lights Out(枚举)
- linux下的errno
- android studio导入github项目详解.
- PHP数据结构之七_队列的链式存储和队列的基本操作
- (Android版)AR 现实增强 高通 Vuforia QCAR SDK学习笔记(一)
- 解决Android Studio中.9图报错问题
- POJ1222-EXTENDED LIGHTS OUT
- leetcode 151. Reverse Words in a String 字符串 翻转
- 拓扑排序
- android热更新机制
- php学习之二运算符
- 使用链表来实现栈结构(希望大神评论一下是否正确)
- 第六章:序列--字符串、列表和元组
- ubuntu14.04安装opencv 3.1
- mysql 创建存储过程demo