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

 #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. 洛谷 P1886 滑动窗口 /【模板】单调队列

    纯板子题,入队时保证单调性,即单调栈,出队保证题目条件,本题即窗口长度k,在入队出队时都可以维护信息 ; int buf[maxm], maxq[maxm], minq[maxm], ans1[max ...

  2. 玩玩负载均衡---在window与linux下配置nginx

      最近有些时间,开始接触负载均衡方面的东西,从硬件F5再到Citrix Netscalar.不过因为硬件的配置虽然不复杂,但昂贵的价格也让一般用户望而却步(十几万到几十万),所以只能转向nginx, ...

  3. hibernate部分源码解析and解决工作上关于hibernate的一个问题例子(包含oracle中新建表为何列名全转为大写且通过hibernate取数时如何不用再次遍历将列名(key)值转为小写)

    最近在研究系统启动时将数据加载到内存非常耗时,想着是否有办法优化!经过日志打印测试发现查询时间(查询时间:将数据库数据查询到系统中并转为List<Map>或List<*.Class& ...

  4. 题解 loj2065 「SDOI2016」模式字符串

    点分治. 考虑经过当前分治中心\(u\)的点对数量. 这种数点对数的问题,有一个套路.我们可以依次考虑\(u\)的每个儿子,看用当前的儿子,能和之前已经考虑过的所有儿子,组成多少点对.这样所有合法的点 ...

  5. Linux之关于用户的几个重要配置文件

    . /etc/skel/ 用来存放新用户配置文件(环境变量)的目录,当创建新用户时,系统会把当下目录的所有文件拷贝一份到新用户家目录中,即:cp -a /etc/skel/* /home/ddu 2. ...

  6. 实践 Network Policy 【转】

    为了演示 Network Policy,我们先部署一个 httpd 应用,其配置文件 httpd.yaml 为: httpd 有三个副本,通过 NodePort 类型的 Service 对外提供服务. ...

  7. push 和 append 以及appendchild 用法和区别

    push() 给数组添加元素,并且返回数组长度 如 : arr.push('a') append() 是jq写法,添加节点到指定父级节点的子节点列表末尾 appendchild() 是append原生 ...

  8. LabVIEW面向对象的ActorFramework(1)

    本系列文章主要阐述以下几个问题: (1)什么是面向对象编程? (2)为什么要学习面向编程? (3)LabVIEW面向编程学习为什么有点难? (4)LabVIEW面向对象的编程架构:Actor Fram ...

  9. Java中数组的创建

    Java中数组的使用 1.普通数组变量的定义: //数组 //1.数组是Java中很重要的一部分,今天对数组进行了大致的了解,Java中的数组和C中数组还是有一定的区别的 //以下是总结的几种方法 p ...

  10. Oracle 中启用 scott 用户 的方法

    解锁scott: SQL> alter user scott account unlock 修改密码: SQL> alter user scott identified by tiger ...