因为变化出来的是平均数,那么就可以对每一个变化出来的列方程,直接高斯消元就行了。

 #include<bits/stdc++.h>
#define N 100005
#define LL long long
#define inf 0x3f3f3f3f
#define ls c[x][0]
#define rs c[x][1]
using namespace std;
inline int ra()
{
int x=,f=; char ch=getchar();
while (ch<'' || ch>'') {if (ch=='-') f=-; ch=getchar();}
while (ch>='' && ch<='') {x=x*+ch-''; ch=getchar();}
return x*f;
}
const int maxn=;
const double eps=1e-;
double a[maxn][maxn];
double ave[][];
double b[maxn];
void guass(int n, int m)
{
int equ=n*m,var=n*m;
for (int row=,col=; row<=equ && col<=var; row++,col++)
{
int maxr=row;
for (int i=row; i<=equ; i++)
if (fabs(a[i][col])-fabs(a[maxr][col])>eps)
maxr=i;
if (fabs(a[maxr][col])<eps)
{
row--; continue;
}
if (maxr!=row)
for (int j=col; j<=var+; j++)
swap(a[maxr][j],a[row][j]);
for (int i=row+; i<=equ; i++)
if (fabs(a[i][col])>eps)
{
double s=a[i][col]/a[row][col];
for (int j=col; j<=var+; j++)
a[i][j]-=a[row][j]*s;
}
}
for (int i=equ; i>=; i--)
{
double tmp=a[i][var+];
for (int j=i+; j<=var; j++)
tmp-=a[i][j]*b[j];
b[i]=tmp/a[i][i];
}
}
int main()
{
int n,m,d; int first=;
while (~scanf("%d%d%d",&m,&n,&d))
{
memset(a,,sizeof(a));
if (n+m+d==) break;
for (int i=; i<=n; i++)
for (int j=; j<=m; j++)
scanf("%lf",&ave[i][j]);
for (int k=; k<=n*m; k++)
{
int x=(k-)/m+,y=k%m; if (!y) y=m;
double num=;
for (int i=; i<=n; i++)
for (int j=; j<=m; j++)
if (abs(i-x)+abs(j-y)<=d)
a[k][(i-)*m+j]=,num++;
a[k][n*m+]=num*ave[x][y];
}
guass(n,m);
if (first) first=; else cout<<endl;
for (int i=; i<=n*m; i++)
{
printf("%8.2lf",b[i]);
if (i%m==) printf("\n");
}
}
return ;
}

hdu3359 Kind of a Blur的更多相关文章

  1. HDU3359 Kind of a Blur(高斯消元)

    建立方程后消元 #include<cstdio> #include<iostream> #include<cstdlib> #include<cstring& ...

  2. 解决css3毛玻璃效果(blur)有白边问题

    做一个登录页,全屏背景图毛玻璃效果,实现方法如下: HTML: <body> <div class="login-wrap"> <div class= ...

  3. js(jquery)解决input元素的blur事件和其他非表单元素的click事件冲突的方法

    HTML结构:很简单,就一个input,一个div,能说明问题就OK了: <input type="text" value="默认值"><br ...

  4. blur和click事件的先后顺序问题

    这两个同时用会有冲突.懒得翻译了,需要的自己看哈. 以下摘自stackoverflow. I have an input field, where I try to make autocomplete ...

  5. input 的blur事件之后button的onclick事件不执行解决方案

    最近发现网页程序中有个BUG,就是在input标签输入框中输入完数据后,直接点击“取消” 按钮的时候.出现网页崩死的情况: 经过小主酸菜我,各种方法的尝试后,找到一个初步可以解决的方案,在这里分享给大 ...

  6. 说说focus /focusin /focusout /blur 事件

    事件触发时间 focus:当focusable元素获得焦点时,不支持冒泡:focusin:和focus一样,只是此事件支持冒泡:blur:当focusable元素失去焦点时,不支持冒泡:focusou ...

  7. [IOS 开发代码]UIImage+Blur 网络图片模糊用法

    UIImage-Helpers 网络图片模糊用法   float quality = .00001f;    float blurred = .5f; NSURL *url = [NSURL URLW ...

  8. jQuery focus、blur事件 添加、删除类名

    jQuery.focusblur = function(ele,className){ var focusblurid = $(ele); focusblurid.focus(function(){ ...

  9. jquery的blur之后,focus获取不到焦点的解决办法

    一:很多童鞋可能会遇到这种情况: jquery的blur之后,focus获取不到焦点. 二:使用场景: 用户填写信息的时候,若邮箱为空,则提示 请填写邮箱,并将光标置于填写邮箱的文本框里,方便用户的再 ...

随机推荐

  1. php:数据库封装类

    <?phpclass DBDA{    public $host="localhost";    public $uid="root";    publi ...

  2. DotNetSpeech----文本转wave语音文件

    wav操作引入dll(DotNetSpeech.dll),引入以后需要选中项目中引入的dll,鼠标右键,选择属性,把“嵌入互操作类型”设置为False.不然会提示无法嵌入互操作类型"Spee ...

  3. MySQL 通过SQL语句导出表为文件

    SELECT * //你要导出的字段 FROM `tabel` //表名 INTO OUTFILE "D:\\file.txt" //导出的文件路径和文件名 LINES TERMI ...

  4. Codeforces Round #624 (Div. 3)(题解)

    Codeforces Round #624 (Div.3) 题目地址:https://codeforces.ml/contest/1311 B题:WeirdSort 题意:给出含有n个元素的数组a,和 ...

  5. P1063 计算谱半径

    P1063 计算谱半径 转跳点:

  6. POJ 2253:Frogger 求每一条路径最大值里面的最小值

    Frogger Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 31490   Accepted: 10150 Descrip ...

  7. java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver java.sql.SQLException

    今天下午一直想用netbeans连接数据库,结果就是来来回回碰到这两个问题. 我还在想,连接数据库并不是一个什么困难的事情啊,我都按照教程上一步一步做的,代码什么的都感觉很好,怎么就找不到类呢,怎么就 ...

  8. Docker 学习之部署php + nginx(一)

    博主电脑系统是window 10 专业版的,所以在此记录下docker的基本使用方法. 参考地址: https://www.runoob.com/docker/docker-install-php.h ...

  9. 8个最常用的Python内置函数,小白必备!

    题图:Photo by Markus Spiske on Unsplash Python给我们内置了大量功能函数,官方文档上列出了69个,有些是我们是平时开发中经常遇到的,也有一些函数很少被用到,这里 ...

  10. 从MSSQL表中删除重复项

    declare @ids int=1 declare @count int while @ids<471 begin select @count=COUNT(*) From LotNO wher ...