#2331. 希蒙误入矩形世界

希蒙误入矩形世界

希蒙误入矩形世界

题目背景

希蒙来到了一个奇怪的矩形点阵世界,他似乎被困住了,请你救救他......

这个世界的每个点都可以用一个二维整数坐标表示(x,y)(x,y),一共nn行,每行mm个点。由于这个世界非常奇怪,所以我们记两个点的距离dis(i,j)=xixj+yiyjdis(i,j)=x_i-x_j+y_i-y_j,请注意与曼哈顿距离区分。希蒙现在尝试从ii号点出发到jj号点,他出发时会从ii号点携带cic_i枚金币,在路途上会花费dis(i,j)dis(i,j)枚金币,同时,在进入jj号点时,他需要向jj号点上缴bjb_j枚金币,当且仅当希蒙到达jj号点后身上金币结余大于等于00时,我们称从ii号点可达jj号点。

现在,你需要求出,对于每个点(xi,yi)(x_i,y_i),有几个点可达。

题目描述

给定一个矩形点阵,坐标用一个二元点对(x,y)(x,y)(1,1)(1,1)(n,m)(n,m)表示,我们记dis(i,j)=xixj+yiyjdis(i,j)=x_i-x_j+y_i-y_j,当且仅当bj+dis(i,j)<=cib_j+dis(i,j)<=c_i时,我们称ii可达jj,你需要对于每个点求出它可达的点的数量。

输入格式

第一行两个整数n,mn,m,含义见上。

接下来输入一个n×mn\times m的矩阵bb,其中bi,jb_{i,j}表示坐标为(i,j)(i,j)的点的bb值,含义见上。

接下来输入一个n×mn\times m的矩阵c,其中ci,jc_{i,j}表示坐标为(i,j)(i,j)的点的cc值,含义见上。

输出格式

你需要输出一个n×mn\times m的矩阵ansans,其中ansi,jans_{i,j}表示坐标为(i,j)(i,j)的点的可达点数。

样例 #1

样例输入 #1

2 3
3 1 5
4 5 3
10 8 7
9 4 5

样例输出 #1

6 6 6
6 2 2

提示

数据范围:

对于10%的数据,我们保证1<=n,m<=1001<=n,m<=100

对于另外20%的数据,我们保证bi,j=0b_{i,j}=0

对于100%的数据,我们保证1<=n,m<=103,0<=bi,j,ci,j<=1041<=n,m<=10^3,0<=b_{i,j},c_{i,j}<=10^4

温馨提示:

本题输入输出量较大,请使用较快的输入输出方式,std使用的是关闭同步流的cin与cout。