TOJ 3858 Home 搜索
来源:互联网 发布:四维数据的图形表示 编辑:程序博客网 时间:2024/06/03 22:11
裸搜就可以了。注意好边界条件。
传送门:http://acm.tju.edu.cn/toj/showp3858.html
#include <cstdio>#include <cstring>#include <cstdlib>#include <cmath>#include <algorithm>#include <iostream>int h[12],v[12];bool Map[11][11];int ans_flag;int n;void print() { for(int i = 0 ; i < 10 ; i++) { for(int j = 0 ; j < 10 ; j++) { printf("%d ",Map[i][j]); } puts(""); } puts("");}void DFS(int cen){ if(ans_flag)return ; if(cen >= n) { // puts("Hello"); ans_flag = 1; return ; } //print(); for(int i = 0 ; i < 10 ; i++) { for(int j = 0 ; j < 10 ; j ++) { int flag = 0; for(int ii = 0 ; ii < h[cen] ; ii ++) { for(int jj = 0 ; jj < v[cen] ; jj ++){ if(i + ii >= 10 || j + jj >= 10 || Map[i+ii][j+jj]) { flag = 1; break; } } } if(flag == 0) { for(int ii = 0 ; ii < h[cen] ; ii ++) { for(int jj = 0 ; jj < v[cen] ; jj ++){ Map[i + ii][j + jj] = 1; } } DFS(cen+1); for(int ii = 0 ; ii < h[cen] ; ii ++) { for(int jj = 0 ; jj < v[cen] ; jj ++){ Map[i + ii][j + jj] = 0; } } } flag = 0; for(int ii = 0 ; ii < v[cen] ; ii ++) { for(int jj = 0 ; jj < h[cen] ; jj ++){ if(i + ii >= 10 || j + jj >= 10 || Map[i+ii][j+jj]) { flag = 1; break; } } } if(flag == 0) { for(int ii = 0 ; ii < v[cen] ; ii ++) { for(int jj = 0 ; jj < h[cen] ; jj ++){ Map[i + ii][j + jj] = 1; } } DFS(cen+1); for(int ii = 0 ; ii < v[cen] ; ii ++) { for(int jj = 0 ; jj < h[cen] ; jj ++){ Map[i + ii][j + jj] = 0; } } } } }}void Deal_with() { while(~scanf("%d",&n)) { for(int i = 0 ; i < n ; i++) { scanf("%d%d",h+i,v+i); } ans_flag = 0; memset(Map,0,sizeof(Map)); DFS(0); if(ans_flag == 0) { puts("No"); } else { puts("Yes"); } }}int main(void) { //freopen("a.in","r",stdin); Deal_with(); return 0;}
0 0
- TOJ 3858 Home 搜索
- TOJ 3858 Home & GCPC 2015 D Carpets 小规模平铺类搜索
- [TOJ 1636] Going Home
- TOJ 1009. Sticks 【搜索+剪枝】
- 搜索——TOJ 4165
- toj 1056 Labyrinth 搜索,树的直径
- TOJ 1551 Power Hungry Cows -- 搜索
- 【TOJ 3403】Treasure Division 【双向搜索】
- 搜索 HOJ 1266 Phone Home
- TOJ 1283 A DP Problem 字符串处理,搜索
- Toj 1116 Poj 1324(A*搜索) Holedox Moving
- TOJ 2470Robot in Maze (广度搜索应用)
- TOJ---2470 Robot in Maze【广度优先搜索】
- home
- Home...
- Home
- home
- home
- C语言程序设计7--8章
- Jar ------META-INF的介绍
- LeetCode---(69)Sqrt(x)
- C++慎用define,以及相关的替代的方法
- 无限互联 奖学金 连载1北京总部 49期学员肖建祥
- TOJ 3858 Home 搜索
- MFC资源切换(AFX_MANAGE_STATE)简介
- C语言中的数组和字符串
- 循环有序数组的查找
- 归档—SharedPreferences(轻量级存储)
- (面试加分题)OC中block的基本用法与深入了解
- HDU 1003 Max Sum
- 程序设计项目实训——银行储蓄系统
- 数据库事务隔离级别与锁