题目连接:添加链接描述
起初,想着就是麻烦,应该思路挺容易的,结果卡了半天,参考了柳婼柳婼。自己错在看到“独一无二”,就先判断这个像素值与周边8个大小绝对值是否大于阀值,然后在判断这个特殊的像素点与原来记录的像素点是否相等。这样做颠倒了。比如样例1那样(如下图)标黄16711479的是相等的,在继续往下比较发现圈红的16711680也满足周边大于阀值,而此时又与先前标黄的不相等,所以按照原来想法,就会发现找到了两个输出unique而样例输出是一个。
此题,应该是先判断该像素值是否唯一,若唯一在判断与周边差距是否大于阀值。

AC代码

#include<iostream>
#include<map>
#include<cmath>
using namespace std;
int main(){int M,N,TOL;cin>>M>>N>>TOL; map<int,int> pxVal;//下标对应像素值 int px[N+1][M+1],y=0,x=0,color=-1,count=0;for(int i=1;i<=N;i++)for(int j=1;j<=M;j++){cin>>px[i][j];pxVal[px[i][j]]+=1;}for(int i=1;i<=N;i++){for(int j=1;j<=M;j++){if(pxVal[px[i][j]]==1&&abs(px[i-1][j]-px[i][j])>TOL&&abs(px[i-1][j-1]-px[i][j])>TOL&&abs(px[i-1][j+1]-px[i][j])>TOL&&abs(px[i][j-1]-px[i][j])>TOL&&abs(px[i][j+1]-px[i][j])>TOL&&abs(px[i+1][j]-px[i][j])>TOL&&abs(px[i+1][j-1]-px[i][j])>TOL&&abs(px[i+1][j+1]-px[i][j])>TOL){count++;if(count>1) {cout<<"Not Unique"<<endl; return 0;}x=i;y=j;color=px[i][j];}}}if(count==0) cout<<"Not Exist"<<endl;else cout<<"("<<y<<", "<<x<<"): "<<color<<endl;return 0;
}

PAT 1068 万绿丛中一点红相关推荐

  1. PAT 1068. 万绿丛中一点红(20)-乙级

    对于计算机而言,颜色不过是像素点对应的一个24位的数值.现给定一幅分辨率为MxN的画,要求你找出万绿丛中的一点红,即有独一无二颜色的那个像素点,并且该点的颜色与其周围8个相邻像素的颜色差充分大. 输入 ...

  2. PAT 乙级 1068  万绿丛中一点红

    1068 万绿丛中一点红 (20 point(s)) 对于计算机而言,颜色不过是像素点对应的一个 24 位的数值.现给定一幅分辨率为 M×N 的画,要求你找出万绿丛中的一点红,即有独一无二颜色的那个像 ...

  3. C++学习之路 | PTA乙级—— 1068 万绿丛中一点红 (20 分)(精简)

    1068 万绿丛中一点红 (20 分) 对于计算机而言,颜色不过是像素点对应的一个 24 位的数值.现给定一幅分辨率为 M×N 的画,要求你找出万绿丛中的一点红,即有独一无二颜色的那个像素点,并且该点 ...

  4. 1068 万绿丛中一点红(20 分)----(一点红,全是绿.)

    1068 万绿丛中一点红(20 分) 对于计算机而言,颜色不过是像素点对应的一个 24 位的数值.现给定一幅分辨率为 M×N 的画,要求你找出万绿丛中的一点红,即有独一无二颜色的那个像素点,并且该点的 ...

  5. PAT 乙级练习 1068 万绿丛中一点红 - 超级详细的思路讲解

    PAT 乙级练习 题解合集 本题链接 题目 对于计算机而言,颜色不过是像素点对应的一个 24 位的数值.现给定一幅分辨率为 M×N 的画,要求你找出万绿丛中的一点红,即有独一无二颜色的那个像素点,并且 ...

  6. Python PAT乙级 1068 万绿丛中一点红 (20分) 成功

    对于计算机而言,颜色不过是像素点对应的一个 24 位的数值.现给定一幅分辨率为 M×N 的画,要求你 找出万绿丛中的一点红,即有独一无二颜色的那个像素点,并且该点的颜色与其周围 8 个相邻像素的颜 色 ...

  7. 【PAT乙级】1068 万绿丛中一点红 (20 分)

    题目地址 #include<cstdio> #include<iostream> #include<algorithm> #include<cmath> ...

  8. 【简便解法】1068 万绿丛中一点红 (20分)

    立志用更少的代码做更高效的表达 Pat乙级最优化代码+题解+分析汇总-->传送门 对于计算机而言,颜色不过是像素点对应的一个 24 位的数值.现给定一幅分辨率为 M×N 的画,要求你找出万绿丛中 ...

  9. PTA乙级 1068 万绿丛中一点红——20分

    对于计算机而言,颜色不过是像素点对应的一个24位的数值.现给定一幅分辨率为MxN的画,要求你找出万绿丛中的一点红,即有独一无二颜色的那个像素点,并且该点的颜色与其周围8个相邻像素的颜色差充分大. 输入 ...

  10. 1068 万绿丛中一点红 (C++)

    对于计算机而言,颜色不过是像素点对应的一个 24 位的数值.现给定一幅分辨率为 M×N 的画,要求你找出万绿丛中的一点红,即有独一无二颜色的那个像素点,并且该点的颜色与其周围 8 个相邻像素的颜色差充 ...

最新文章

  1. windows xp系统驱动安装问题
  2. sqoop 常见错误以及处理方式
  3. linux 进程相关
  4. 中国中医药产业未来投资规划与前景风险预测报告2022-2027年版
  5. 类如何调用自己的私有成员_如何正确地给自己和团队成员贴标签?|衡量团队管理 20 讲视觉笔记 14...
  6. 使用Chrome的timeline工具分析web应用性能
  7. 如何帮用户管好云账本?阿里云数据库助力收钱吧 | 甲子光年
  8. 编写第一个Java程序:helloworld
  9. 写给自己看的三栏布局的演示
  10. RDD持久化(缓存)
  11. HEVC视频转码解决办法
  12. 怎样使用计算机网络,手机使用电脑网络怎么操作 手机使用电脑网络操作方法...
  13. oracle 11g duplicate database基于备份复制数据库(二)
  14. redis数据库正确用法
  15. HDU 5811 (拓扑排序 LIS)
  16. 校招 - 行业测评题、图形推理题、逻辑思维面试题,解题技巧汇总
  17. commander.js使用及源码分析
  18. 小飞鱼通达二开 解决通达OA数据库服务不能启动的问题(图文)
  19. HNUCM信息科学与工程学院第二届新生赛——正式赛
  20. Java真心话大冒险,真心话大冒险源码

热门文章

  1. 计算机双显卡关掉一个,怎么关掉集成显卡_win10双显卡电脑关闭集成显卡的方法...
  2. macOS Sierra,Xcode 8配置openCV3
  3. ycharm无法识别导入本地py文件
  4. 一款网页游戏外挂开发-数据抓包2
  5. android 图标 自定义,巧用 Drawable 之实现一个最简单的自定义电池图标
  6. HDU-1869 六度分离
  7. Ubuntu下快捷方式图标存放位置
  8. 网络聊天室项目说明书
  9. win32asm写的红警98修改器
  10. 【Ruby on Rails全栈课程】2.1 ruby语言入门