13:图像模糊处理

总时间限定: 
1000ms

内部存款和储蓄器限制: 
65536kB

描述
加以n行m列的图像各像素点的灰度值,须要用如下方法对其开始展览模糊化处理:

  1. 周围最外侧的像素点灰度值不变;

2.
中间各像素点新灰度值为该像素点及其前后左右紧邻多个像素点原灰度值的平分(舍入到最相仿的整数)。

输入
第二行包括五个整数n和m,表示图像包括像素点的行数和列数。1 <= n <=
100,1 <= m <= 100。
接下去n行,每行m个整数,表示图像的各类像素点灰度。相邻几个整数之间用单个空格隔离,每一种成分均在0~255之间。

输出
n行,每行m个整数,为模糊处理后的图像。相邻多个整数之间用单个空格隔断。

样例输入
4 5
100 0 100 0 50
50 100 200 0 0
50 50 100 100 200
100 100 50 50 100

样例输出
100 0 100 0 50
50 80 100 60 0
50 80 100 90 200
100 100 50 50 100

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<cmath>
using namespace std;
int a[10001][10001];
int b[10001][10001];
int main()
{
    int n,m;
    cin>>n>>m;
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=m;j++)
        {
            cin>>a[i][j];
            b[i][j]=a[i][j];
        }
    }
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=m;j++)
        {
            if(i==1||i==n||j==1||j==m)
            {
                continue;
            }
            else
            {
                double r=((double)a[i][j]+a[i-1][j]+a[i+1][j]+a[i][j-1]+a[i][j+1])/5;
                b[i][j]=round(r);
            }
        }
    }
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=m;j++)
        cout<<b[i][j]<<" ";
        cout<<endl;
    }
    return 0;
}

 

18:干白疗法

总时限: 
1000ms

内部存款和储蓄器限制: 
65536kB

描述
朗姆酒疗法,原指“高效抗反败为胜录病毒治疗”(HAALX570T),由美籍华侨科学家何大学一年级于一九九六年建议,是经过二种或三种以上的抗病毒药物联合利用来治疗HIV。该疗法的采取能够减去单一用药产生的抗药性,最大限度地遏制病毒的复制,使被毁坏的机体免疫性功效部分甚至整个重操旧业,从而延缓病程进展,延长病人生
命,提升生活品质。人们在烧酒疗法的基础上又建议了很种种改革的疗法。为了表明这个临床方式是还是不是在医疗效果上比白酒疗法更好,可用通过治病对照实验的不二法门
进行。借使果酒疗法的有效能为x,新疗法的有作用为y,假如y-x大于5%,则效果更好,假使x-y大于5%,则效果更差,不然称为效果大致。下边给
出n组临床对照实验,在那之中第三组选取红酒疗法,别的n-1组为各个不一致的改正疗法。请写程序判定各类立异疗法效果怎么样。

输入
第壹行事整数n( 1 < n <= 20);
其他n行每行三个整数,第一个整数是临床实验的总病例数(小于等于一千0),第三个医疗效果有效的病例数。
那n行数据中,第叁行为清酒疗法的数据,其他各行为种种立异疗法的数量。

输出
有n-1行输出,分别表示对应革新疗法的作用:
比方效果更好,输出better;如果效果更差,输出worse;不然输出same

样例输入
5
125 99
112 89
145 99
99 97
123 98

样例输出
same
worse
better
same

 1 #include<iostream>
 2 using namespace std;
 3 int ans[10001];
 4 int main()
 5 {
 6     int n;
 7     float a,b;
 8     cin>>n;
 9     float x,y;
10     for(int i=1;i<=n;i++)
11     {
12         cin>>a>>b;
13         if(i==1)
14         {
15             x=(b/a)*100;
16             continue;
17         }
18         else y=(b/a)*100;
19         if((y-x)>5)ans[i]=1;
20         else if((x-y)>5)ans[i]=-1;
21         else ans[i]=0;
22     }
23     for(int i=2;i<=n;i++)
24     {
25         if(ans[i]==1)
26         cout<<"better"<<endl;
27         else if(ans[i]==-1)
28         cout<<"worse"<<endl;
29         else if(ans[i]==0)
30         cout<<"same"<<endl;
31     }
32     return 0;
33 }