zoukankan      html  css  js  c++  java
  • 1068 万绿丛中一点红 (20 分)

    捕获.PNG

    #include <iostream>
    #include<math.h>
    #include<map>
    using namespace std;
    int a[1001][1001];//定义在main()的外面,这样任何函数都有可以调用,就不需要再往其他函数中传参了
    //用来遍历一个点附近八个点
    int dir[8][2] = { 1,0, -1,0, 0,1, 0,-1, 1,1, -1,-1, 1,-1, -1,1 };
    int n, m;
    int tol;
    
    map<int ,int> s;//用来记录一个像素点出现的次数,map中value为int类型时默认初始值为0
    //判断是否为突出点
    bool check(int x,int y) {//a行b列
    	for (int i = 0;i < 8;i++) {
    		int xx = x + dir[i][0];
    		int yy = y + dir[i][1];
    		if (xx >= 0 && xx < n&&yy >= 0 && yy < m&&abs(a[x][y] - a[xx][yy]) <= tol)
    			return false;
    	}
    	return true;
    }
    int main()
    {
    	int count = 0;
    	int hang, lie;
    	int color;
    	cin >> m >> n >> tol;
    	for (int i = 0;i < n;i++) {
    		for (int j = 0;j < m;j++) {
    			cin >> a[i][j];
    			s[a[i][j]]++;
    		}
    	}
    	for (int i = 0;i < n;i++) {
    		for (int j = 0;j < m;j++) {
    			if (check(i,j)&&s[a[i][j]]==1) {
    				count++;
    				hang = i, lie = j, color = a[i][j];
    			}
    		}
    	}
    	if (count == 1) {
    		cout << "(" << lie+1 << ", " << hang+1 << "): " << color;
    	}
    	else if (count > 1) {
    		cout << "Not Unique";
    	}
    	else {
    		cout << "Not Exist";
    	}
    	return 0;
    }
    

    参考博客:https://blog.csdn.net/qq_34594236/article/details/63692920

  • 相关阅读:
    hdu 5146 Sequence
    hdu 1232 畅通工程
    hdu 1213 How Many Tables
    hdu 2822 Dogs
    hdu 1242 Rescue
    hdu 5101 Select
    hdu 1873 看病要排队
    hdu 5112 A Curious Matt
    hdu 5154 Harry and Magical Computer
    hdu 1548 A strange lift
  • 原文地址:https://www.cnblogs.com/chance-zou/p/10462829.html
Copyright © 2011-2022 走看看