Purification
来源:互联网 发布:大数据带来的实质变化 编辑:程序博客网 时间:2024/06/09 20:10
最少需要n次, 按行每行或者案列每列放一个, 如果不能存在就无解
#include <iostream>#include <cstring>#include <string>#include <cmath>#include <algorithm>#include <cstdio>#include <cstdlib>#include <vector>#define MAX 1005#define INF 1e8#define FOR(i, n) for(int i = 0; i < n; i++)#define FORB(i, n) for(int i = n - 1; i >= 0; i--)#define MKPR(i, j) make_pair(i, j)using namespace std;int n;char s[MAX][MAX];void solve(){}int main(){ cin>>n; getchar(); FOR(i, n){ gets(s[i]); } bool isFind = true; vector<pair<int, int> >ans; FOR(i, n){//每行放一个 isFind =false; FOR(j, n){ if( s[i][j] != 'E'){ isFind = true; ans.push_back( MKPR(i + 1, j + 1) ); break; } } if(isFind == false){ ans.clear(); break; } } if(isFind){ int tn = ans.size(); FOR(i, tn)cout<<ans[i].first<<" "<<ans[i].second<<endl; return 0; } FOR(j, n){ isFind = false; FOR(i, n){ if(s[i][j] != 'E'){ isFind = true;// cout<<i + 1<<" "<<j + 1<<endl; ans.push_back(MKPR(i + 1, j + 1)); break; } } if(isFind == false)break; } cout<<endl; if(isFind){ int tn = ans.size(); FOR(i, tn){ cout<<ans[i].first<<" "<<ans[i].second<<endl; } }else { puts("-1"); } return 0;}
- Purification
- Codeforces Purification
- Codeforces 329A Purification
- codeforces 330C Purification
- Codeforces 330C Purification【思维】
- Codeforces Round #192 (Div. 2) C. Purification
- CF330 C. Purification 认真想后就成水题了
- CF 329A(Purification-贪心-非DLX)
- Codeforces Round #192 (Div. 2) (329A)C.Purification
- 无监督对话数据清洗利器:Data Purification Framework
- Codeforces Round #192 (Div. 1) A. Purification(贪心模拟+清除每行每列)
- 给函数增加Debug头 - windows平台的普通打印调试处理
- python字符串与数字类型转化
- 数据类型转换
- H264和MPEG4起始码(startcode)
- Windows store app[Part 1]:读取U盘数据
- Purification
- Minimum Window Substring [从O(N*M),O(NlogM) 到O(N)]
- 错误异常
- android开发关于targetSdkVersion
- 一个优秀的c++程序员应该具备的素质
- phoneGap开发总结一
- AngularJS错误:Error :Listen EADDRINUSE
- h.264码流打包分析
- rtp/rtcp协议详解