PAT (Basic Level) Practice (中文)1066 图像过滤 (15 分)
2024-08-31 11:14:29
图像过滤是把图像中不重要的像素都染成背景色,使得重要部分被凸显出来。现给定一幅黑白图像,要求你将灰度值位于某指定区间内的所有像素颜色都用一种指定的颜色替换。
输入格式:
输入在第一行给出一幅图像的分辨率,即两个正整数 M 和 N(0),另外是待过滤的灰度值区间端点 A 和 B(0)、以及指定的替换灰度值。随后 M 行,每行给出 N 个像素点的灰度值,其间以空格分隔。所有灰度值都在 [0, 255] 区间内。
输出格式:
输出按要求过滤后的图像。即输出 M 行,每行 N 个像素灰度值,每个灰度值占 3 位(例如黑色要显示为 000
),其间以一个空格分隔。行首尾不得有多余空格。
输入样例:
3 5 100 150 0
3 189 254 101 119
150 233 151 99 100
88 123 149 0 255
输出样例:
003 189 254 000 000
000 233 151 099 000
088 000 000 000 255
#include <iostream>
#include <algorithm>
#include <set>
#include <cmath>
#include <cstdio>
using namespace std;
int n;
int a[][];
int main()
{
int n,m,x,y,z;
while(cin>>n>>m>>x>>y>>z){
for(int i=;i<n;i++){
for(int j=;j<m;j++){
cin>>a[i][j];
if(a[i][j]>=x&&a[i][j]<=y){
a[i][j]=z;
}
}
}
for(int i=;i<n;i++){
for(int j=;j<m;j++){
if(j==) printf("%03d",a[i][j]);
else printf(" %03d",a[i][j]);
}
printf("\n");
}
}
return ;
}
最新文章
- /proc/sysrq-trigger该文件能做些什么事情-转载
- 【C语言入门教程】4.1 一维数组
- BZOJ3414 : Poi2013 Inspector
- 通过MongoDB的samus驱动实现基本数据操作
- sublime 使用技巧
- SQL Server中开发常用的数据类型
- Android FM模块学习之一 FM启动流程
- shell脚本实例-matrix
- 段落排版--行间距, 行高(line-height)
- 禁止ios默认拉动弹性行为
- MySQL 查询结果以百分比显示
- C语言的变量的内存分配
- 001.MVC基本概述
- MySQL (七)--视图、数据库备份和还原
- mac常用操作
- 2017-2018 ACM-ICPC, NEERC, Northern Subregional ContestG - Grand Test
- C++判断char*的指向
- linux体系结构与内核结构图解
- ZooKeeper 典型应用场景
- Siki_Unity_2-4_UGUI_Unity5.1 UI 案例学习