hihoCoder #1268 : 九宫 【DFS】
来源:互联网 发布:找工作什么软件最靠谱 编辑:程序博客网 时间:2024/05/17 21:39
题目链接:hihoCoder #1268 : 九宫
怎么搞都能过
#include <iostream>#include <cstdio>#include <cstring>#include <cstdlib>#include <cmath>#include <algorithm>#include <vector>#include <queue>#include <map>#define PI acos(-1.0)#define CLR(a, b) memset(a, (b), sizeof(a))#define fi first#define se secondusing namespace std;typedef long long LL;typedef pair<int, int> pii;const int MAXN = 1e5+10;const int INF = 0x3f3f3f3f;const int MOD = 1e9 + 7;void getmax(int &a, int b) {a = max(a, b); }void getmin(int &a, int b) {a = min(a, b); }void add(LL &x, LL y) { x += y; x %= MOD; }int Map[3][3];bool use[10];bool judge() { int sum1, sum2; for(int i = 0; i <= 2; i++) { sum1 = Map[i][0] + Map[i][1] + Map[i][2]; sum2 = Map[0][i] + Map[1][i] + Map[2][i]; if(sum1 != 15 || sum2 != 15) return false; } sum1 = sum2 = 0; for(int i = 0; i <= 2; i++) sum1 += Map[i][i]; for(int i = 0; i <= 2; i++) sum2 += Map[i][2-i]; return sum1 == 15 && sum2 == 15;}void DFS(int row, int cul){ if(cul == 3) { DFS(row+1, 0); return ; } if(row == 3) { if(judge()) { for(int i = 0; i <= 2; i++) { for(int j = 0; j <= 2; j++) { if(j) cout << " "; cout << Map[i][j]; } cout << endl; } } return ; } for(int i = cul; i < 3; i++) { if(Map[row][i]) continue; for(int j = 1; j <= 9; j++) { if(use[j]) continue; use[j] = true; Map[row][i] = j; DFS(row, i+1); Map[row][i] = 0; use[j] = false; } } DFS(row+1, 0);}int main(){ while(cin >> Map[0][0] >> Map[0][1] >> Map[0][2]) { for(int i = 1; i <= 2; i++) cin >> Map[i][0] >> Map[i][1] >> Map[i][2]; for(int i = 0; i <= 2; i++) { for(int j = 0; j <= 2; j++) { if(Map[i][j]) { Map[2-i][2-j] = 10 - Map[i][j]; } } } Map[1][1] = 5; int cnt = 0; cnt = (Map[0][0] > 0) + (Map[0][1] > 0) + (Map[0][2] > 0) + (Map[1][0] > 0); if(cnt >= 2) { CLR(use, false); for(int i = 0; i <= 2; i++) for(int j = 0; j <= 2; j++) use[Map[i][j]] = true; DFS(0, 0); } else { printf("Too Many\n"); } } return 0;}
0 0
- hihoCoder #1268 : 九宫 【DFS】
- hihocoder 1268 九宫 dfs
- [Offer收割]编程练习赛1 hihocoder 1268 九宫 (DFS)
- hihoCoder 1268 九宫
- [HihoCoder]#1268 : 九宫
- HihoCoder 1268 九宫(暴力)
- #1268 : 九宫[dfs]
- hihoCoder 第135周 T1 九宫 【暴力 dfs 】
- hihoCoder--1268--九宫(全排列)
- 九宫格dfs
- hihoCoder #1054 dfs
- hihocoder #1224 : 赛车 dfs
- hiho1268 九宫(DFS练习)
- #1268 : 九宫
- hihocoder 1041 国庆出游 dfs
- DFS搜索 --- HihoCoder 1168 Transport
- hihocoder 1054 滑动解锁 dfs
- hihoCoder 1224 赛车 (dfs,邻接链表存边)
- Max Sum Plus Plus
- POJ 1006 中国剩余定理
- 在php中使用CURL构造POST请求
- iOS runtime 运行时( 二 深谈)
- 使用eclipse编译ns-3
- hihoCoder #1268 : 九宫 【DFS】
- IP数据报重组与分片 与多道程序设计的优点
- hibernate缓存机制详解
- Android Wear WearableListView 实现+源码
- npm设置镜像如淘宝:http://npm.taobao.org/
- 7-1、Spark-Scheduler
- 排序算法-插入排序
- android 6.0 SystemUI源码分析(5)-PowerUI介绍
- oracle外键约束表无法truncate