hdu5386Cover 暴力枚举
来源:互联网 发布:养生源码 编辑:程序博客网 时间:2024/06/10 11:00
//给一个n*n的矩阵,m个操作,问怎样安排顺序使得//这个变为目标矩阵//因为n<=100所以直接枚举所有操作,直接判断该操作是否为最后一个操作//对于已经处理完的操作,将该行或列置为0,后来的操作不处理这些操作#include<cstdio>#include<cstring>#include<iostream>#include<vector>using namespace std ;const int maxn = 510 ;int map[maxn][maxn] ;int solve[maxn] ;int ans[maxn] ;int match[maxn] ;char ch[maxn][10];int x[maxn] ,y[maxn] ;int vis[2][maxn] ;int n , m;int main(){ //freopen("in.txt" , "r" , stdin) ; int t ; scanf("%d" , &t) ; while(t--) { scanf("%d%d" , &n , &m) ; memset(solve , 0 , sizeof(solve)) ; memset(vis , 0 , sizeof(vis)) ; for(int i = 1;i <= n;i++) for(int j = 1;j <= n;j++) scanf("%d" , &map[i][j]) ; for(int i = 1;i <= n;i++) for(int j = 1;j <= n;j++) scanf("%d" , &map[i][j]) ; for(int i = 1;i <= m;i++) scanf("%s%d%d" ,ch[i] , &x[i] , &y[i]) ; int len = 0 ; while(1) { int flag = 0 ; for(int i = 1;i <= m;i++) { if(solve[i])continue ; if(ch[i][0] == 'H') { if(vis[0][x[i]]) { ans[++len] = i ; solve[i] = 1 ; continue ; } int tmp = 0 ; for(int j = 1;j <= n;j++) if(map[x[i]][j] != y[i] && map[x[i]][j]) { tmp = 1; break ; } if(!tmp) { ans[++len] = i ; solve[i] = vis[0][x[i]] = 1; memset(map[x[i]] , 0 , sizeof(map[x[i]])) ; flag = 1 ; } } else { if(vis[1][x[i]]) { ans[++len] = i ; solve[i] = 1 ; continue ; } int tmp = 0 ; for(int j = 1;j <= n;j++) if(map[j][x[i]] != y[i] && map[j][x[i]]) { tmp = 1; break ; } if(!tmp) { ans[++len] = i ; solve[i] = vis[1][x[i]] = 1; for(int j = 1;j <= n;j++) map[j][x[i]] = 0 ; flag = 1; } } } if(!flag)break ; } for(int i = 1;i <= m;i++) if(!solve[i]) ans[++len] = i ; for(int i = m;i > 0;i--) printf("%d%c" , ans[i] , i == 1 ?'\n' :' ') ; } return 0 ;}
0 0
- hdu5386Cover 暴力枚举
- 暴力枚举
- 暴力枚举?
- 暴力枚举
- 暴力枚举
- 暴力枚举
- poj 3102(暴力枚举)
- hdu 3332 暴力枚举
- BNU - Candles - 暴力枚举
- poj1222(暴力枚举)
- Coin Change(暴力枚举)
- HDU 3823 暴力枚举
- hdu1015 Safecracker (暴力枚举)
- hdu1172(暴力枚举)
- hdu4643(暴力枚举+二分法)
- 暴力枚举大水题
- hdu1004暴力枚举
- FZU 2041 暴力枚举
- Delphi操作Unicode字符
- mvn(即maven)、ant、svn、cvs、git
- python2.7学习笔记(4) ——条件判断、循环、dict、set
- 08/13 D -> codeforces Round #Pi div 2 E. President and Roads 最短路变形
- 软件列表
- hdu5386Cover 暴力枚举
- AC算法初探
- Github 初次使用 commit命令提交失败
- URAL - 1949 The Best Picture in the Galaxy
- Servlet-ServletContextListener
- onReceivedTitle() 没被调用的解决
- Android 设置状态栏 显示 或 隐藏 SystemUI flag
- 连接池简介
- Eclipse创建Maven Web工程并实现Tomcat热部署