PAT basic 1068
来源:互联网 发布:罗莱蚕丝被 知乎 编辑:程序博客网 时间:2024/06/09 20:04
#include <cstdio>#include <vector>#include <map>using namespace std;int m, n, tol;vector<vector<int>> v;int dir[8][2] = {{-1, -1}, {-1, 0}, {-1, 1}, {0, 1}, {1, 1}, {1, 0}, {1, -1}, {0, -1}};bool judge(int i, int j) { for (int k = 0; k < 8; k++) { int tx = i + dir[k][0]; int ty = j + dir[k][1]; if (tx >= 0 && tx < n && ty >= 0 && ty < m && v[i][j] - v[tx][ty] >= 0 - tol && v[i][j] - v[tx][ty] <= tol) return false; } return true;}int main() { int cnt = 0, x = 0, y = 0; scanf("%d%d%d", &m, &n, &tol); v.resize(n, vector<int>(m)); map<int, int> mapp; for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { scanf("%d", &v[i][j]); mapp[v[i][j]]++; } } for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { if (mapp[v[i][j]] == 1 && judge(i, j) == true) { cnt++; x = i + 1; y = j + 1; } } } if (cnt == 1) printf("(%d, %d): %d", y, x, v[x-1][y-1]); else if (cnt == 0) printf("Not Exist"); else printf("Not Unique"); return 0;}
阅读全文
0 0
- PAT basic 1068
- PAT Basic
- PAT (Basic Level) Practise
- PAT Basic 1001
- PAT Basic 1002
- PAT Basic 1005
- PAT Basic 1006
- PAT Basic 1007
- PAT Basic 1008
- PAT Basic 1009
- PAT Basic 1010
- pat basic level 1016
- pat basic level 1018
- pat basic level 1019
- PAT(basic level)题解
- PAT basic 1004 : 成绩排名
- PAT (Basic) 1001~1005
- PAT (Basic) 1006~1010
- C++构造函数初始化顺序详解
- 服务器之间传输数据
- 如何使用vue实现一个简易的购物车
- linux下利用openssl来实现证书的颁发(详细步骤)
- JDBC中Scrollable ResultSet(滚动结果集)(四)
- PAT basic 1068
- 算法题/层次遍历二叉树
- Android SVG动画animated-vector使用
- 位图的简单实现(bitMap)
- 多版本jdk/eclipse/tomcat的处理
- Hadoop Streaming 做大数据处理详解
- hdu 6170 Two strings
- Android -- 获取接口数据的三个方法
- [USACO06FEB]数字三角形Backward Digit Su…