fjnu 1704 Blurred Vision
来源:互联网 发布:密度矩阵 编辑:程序博客网 时间:2024/04/29 03:46
Description
Aliasing is the stair-step effect achieved when attempting to represent a smooth curve using a finite number
of discrete pixels. Of course, all computer displays consist of a finite number of pixels, and many strategies
have been devised to smooth the jagged edges with varying degrees of success.
Boudreaux and Thibodeaux are writing video game rendering software for the next big first-person shooter,
and they don't know much about any of the progress made in the field of anti-aliasing. Therefore, they've
decided to use a very simplistic (and visually unappealing) method to smooth the ragged edges.
Unfortunately, it blurs the entire image, but at least it gets rid of those jaggies!
Normally, the game displays in m x n pixels, but they perform an extra anti-aliasing step that converts that
image into an (m - 1) x (n - 1) image. Nobody will notice a pixel missing from each dimension, and
they can calculate the new pixels by averaging squares of 4 pixels from the original image (and rounding
down). For example, the images below represent the original image (left) and the anti-aliased image (right)
using numbers to represent varying shades of black and white.
Input
1. Start line - A single line:
START R C
where R and C are integers (2 ≤ (R,C) ≤ 9) indicating the number of rows and columns in the input
image described by this data set.
2. Original Image - A series of R lines, each of which contains C integers from 0 to 9 inclusive. These
integers represent the grayscale value of a pixel in the original image and will not be separated by
spaces.
3. End line - A single line:
END
After the last data set, there will be a single line:
ENDOFINPUT
Output
The output will be the anti-aliased image, which will be R - 1 rows, each with C - 1 integer pixel values.
Each pixel in the output will be generated by averaging (and rounding down) the grayscale pixel values of
the corresponding square of four pixels in the Original Image.
Sample Input
START 2 20000ENDSTART 2 9012345678012345678ENDSTART 4 44440440040000000ENDSTART 9 9900000009090000090009000900000909000000090000000909000009000900090000090900000009ENDENDOFINPUT
Sample Output
0012345674313101004200002424200242024224200024420000244200024224202420024242000024
KEY:这题要看懂题目,其实题目的样例有错,应该是一个0(第一个),每四个相邻的方格求平均,组成一个值;
#include<iostream>
using namespace std;
int a[15][15];
int b[15][15];
int R,C;
void init()
...{
int i,j;
for(i=1;i<=10;i++)
for(j=1;j<=10;j++)
a[i][j]=b[i][j]=0;
}
void input()
...{
int i,j;
char t;
for(i=1;i<=R;i++)
for(j=1;j<=C;j++)
...{
cin>>t;
a[i][j]=t-'0';
}
getchar();
}
void output()
...{
int i,j;
for(i=1;i<=R-1;i++)
...{
for(j=1;j<=C-1;j++)
cout<<b[i][j];
cout<<endl;
}
}
void fun()
...{
int i,j;
for(i=1;i<=R-1;i++)
for(j=1;j<=C-1;j++)
b[i][j]=(a[i][j]+a[i+1][j]+a[i][j+1]+a[i+1][j+1])/4;
}
int main()
...{
// freopen("fjnu_1704.in","r",stdin);
char tmp[10];
while(1)
...{
cin>>tmp;
if(!strcmp(tmp,"ENDOFINPUT")) break;
if(!strcmp(tmp,"START"))
...{
init();
cin>>R>>C;
input();
fun();
output();
}
if(!strcmp(tmp,"END")) continue;
getchar();
}
return 0;
}
- fjnu 1704 Blurred Vision
- HDU 1218 Blurred Vision
- HDU 1218 - Blurred Vision
- poj 2579 Blurred Vision
- 杭电1218 Blurred Vision
- POJ 2579 Blurred Vision G++
- zoj 2187 Blurred Vision【水】【模拟】
- POJ 2579 Blurred Vision(简单题)
- 杭电ACM1218——Blurred Vision
- HDOJ 1218 Blurred Vision (水题)
- POJ 2579 && HDU 1218 Blurred Vision(水~)
- POJ 2579 Blurred Vision(我的水题之路——四方格平均值)
- FJNU
- FJNU字符串
- FJNU字符串
- fjnu 1772
- Computer Vision
- Computer Vision
- fjnu 1760 小樱的烦恼
- This server version is not supported. Only servers up to Microsoft SQL Server 2005 are supported.
- Konsole的字体调整
- 推荐一个小工具: Process Explorer
- 针对 .NET 开发人员的存储过程评估
- fjnu 1704 Blurred Vision
- ExtJS2.0开发与实践笔记[2]——Ext中的Layout
- 始めまして
- tomcat中的几点配置说明
- fjnu 1438 黑白图像压缩
- fjnu 1407 整除65的多项式
- 浮点指令的逆向求解
- 多线程模型:生产者和消费者
- fjnu 1471 正方形及园孔