B. Serval and Toy Bricks
time limit per test

1 second

memory limit per test

256 megabytes

input

standard input

output

standard output

Luckily, Serval got onto the right bus, and he came to the kindergarten on time. After coming to kindergarten, he found the toy bricks very funny.

He has a special interest to create difficult problems for others to solve. This time, with many 1×1×11×1×1 toy bricks, he builds up a 3-dimensional object. We can describe this object with a n×mn×m matrix, such that in each cell (i,j), there are hi,jhi,j bricks standing on the top of each other.

However, Serval doesn't give you any hi,j and just give you the front view, left view, and the top view of this object, and he is now asking you to restore the object. Note that in the front view, there are mm columns, and in the ii -th of them, the height is the maximum of h1,i,h2,i,…,hn,ih1,i,h2,i,…,hn,i . It is similar for the left view, where there are nn columns. And in the top view, there is an n×mn×m matrix ti,jti,j , where ti,jti,j is 00 or 11 . If ti,jti,j equals 11 , that means hi,j>0hi,j>0 , otherwise, hi,j=0hi,j=0 .

However, Serval is very lonely because others are bored about his unsolvable problems before, and refused to solve this one, although this time he promises there will be at least one object satisfying all the views. As his best friend, can you have a try?

Input

The first line contains three positive space-separated integers n,m,hn,m,h (1≤n,m,h≤1001≤n,m,h≤100 ) — the length, width and height.

The second line contains mm non-negative space-separated integers a1,a2,…,ama1,a2,…,am , where aiai is the height in the ii -th column from left to right of the front view (0≤ai≤h0≤ai≤h ).

The third line contains nn non-negative space-separated integers b1,b2,…,bnb1,b2,…,bn (0≤bj≤h0≤bj≤h ), where bjbj is the height in the jj -th column from left to right of the left view.

Each of the following nn lines contains mm numbers, each is 00 or 11 , representing the top view, where jj -th number of ii -th row is 11 if hi,j>0hi,j>0 , and 00 otherwise.

It is guaranteed that there is at least one structure satisfying the input.

Output

Output nn lines, each of them contains mm integers, the jj -th number in the ii -th line should be equal to the height in the corresponding position of the top view. If there are several objects satisfying the views, output any one of them.

Examples
Input

 
3 7 3
2 3 0 0 2 0 1
2 1 3
1 0 0 0 1 0 0
0 0 0 0 0 0 1
1 1 0 0 0 0 0
Output

 
1 0 0 0 2 0 0
0 0 0 0 0 0 1
2 3 0 0 0 0 0
Input

 
4 5 5
3 5 2 0 4
4 2 5 4
0 0 0 0 1
1 0 1 0 0
0 1 0 0 0
1 1 1 0 0
Output

 
0 0 0 0 4
1 0 2 0 0
0 5 0 0 0
3 4 1 0 0




解题思路:这道题就是给你正视图,侧视图,俯视图,让你恢复它的原状;
实际上这个用多组解;用贪心即可,每次取最小;
代码如下:
 #include<iostream>
using namespace std; int row , col , height ;
int c[];
int r[];
int G[][];
int main()
{
cin>>row>>col>>height;
for(int i = ; i < col ;i++)
{
cin>>c[i];
}
for(int i = ; i < row ;i++)
{
cin>>r[i];
} for(int i = ; i < row ;i++)
{
for(int j = ; j < col ;j++)
{
cin>>G[i][j];
if(G[i][j]==)
{
if(c[j]<=r[i]) //不断取行和列交接处的较小者
{
G[i][j] = c[j];
}else
G[i][j] = r[i];
}
}
} for(int i = ; i < row ;i++)
{
for(int j = ; j < col ;j++)
{
cout<<G[i][j];
(j==col-)?cout<<"":cout<<" ";//格式
}
cout<<endl;
}
return ;
}

Codeforces Round #551 (Div. 2)B. Serval and Toy Bricks的更多相关文章

  1. Codeforces Round #551 (Div. 2) D. Serval and Rooted Tree (树形dp)

    题目:http://codeforces.com/contest/1153/problem/D 题意:给你一棵树,每个节点有一个操作,0代表取子节点中最小的那个值,1代表取子节点中最大的值,叶子节点的 ...

  2. Codeforces Round #551 (Div. 2)A. Serval and Bus

    A. Serval and Bus time limit per test 1 second memory limit per test 256 megabytes input standard in ...

  3. Codeforces Round #551 (Div. 2) D. Serval and Rooted Tree (树形dp)

    题目链接 题意:给你一个有根树,假设有k个叶子节点,你可以给每个叶子节点编个号,要求编号不重复且在1-k以内.然后根据节点的max,minmax,minmax,min信息更新节点的值,要求根节点的值最 ...

  4. Codeforces Round #551 (Div. 2) E. Serval and Snake (交互题)

    人生第一次交互题ac! 其实比较水 容易发现如果查询的矩阵里面包含一个端点,得到的值是奇数:否则是偶数. 所以只要花2*n次查询每一行和每一列,找出其中查询答案为奇数的行和列,就表示这一行有一个端点. ...

  5. Codeforces Round #551 (Div. 2) F. Serval and Bonus Problem (DP/FFT)

    yyb大佬的博客 这线段期望好神啊... 还有O(nlogn)FFTO(nlogn)FFTO(nlogn)FFT的做法 Freopen大佬的博客 本蒟蒻只会O(n2)O(n^2)O(n2) CODE ...

  6. 【Codeforces】Codeforces Round #551 (Div. 2)

    Codeforces Round #551 (Div. 2) 算是放弃颓废决定好好打比赛好好刷题的开始吧 A. Serval and Bus 处理每个巴士最早到站且大于t的时间 #include &l ...

  7. Codeforces Round #551 (Div. 2)

    传送门 B. Serval and Toy Bricks 题意: 有一些规格相同的方块摆放在 n×m 的矩阵 h 中,h[i][j]代表第 (i,j) 个矩阵摆放的方块的高度: 现给你三个视图: 正视 ...

  8. Codeforces Round #551 (Div. 2) A-E

    A. Serval and Bus 算出每辆车会在什么时候上车, 取min即可 #include<cstdio> #include<algorithm> #include< ...

  9. Codeforces Round #551 (Div. 2) A~E题解

    突然发现上一场没有写,那就补补吧 本来这场应该5题的,结果一念之差E fail了 A. Serval and Bus 基本数学不解释,假如你没有+1 -1真的不好意思见人了 #include<c ...

随机推荐

  1. C# 面向切面编程--监控日志记录方案

    背景:现在公司整体在做监控平台,要求把各个部分的细节都记录下来,在前台页面上有所显示,所以现在需要做的就是一个监控日志的记录工作,今天讲的就是渲染监控日志的例子. 现状:当前的渲染程序没有为监控日志记 ...

  2. VS2017中的附加到进程

    vs2017 里加入了IIS Express,所以在web项目执行的时候,在附加进程中找不到端口号了,只能找到PID 但是浏览器的地址栏里还是带有端口的地址:http://localhost:1351 ...

  3. python's fourteenth day for me 内置函数

    locals:  函数会以字典的类型返回当前位置的全部局部变量. globals:  函数会以字典的了类型返回全部的全局变量. a = def func(): b = print(locals()) ...

  4. leetcode762

    class Solution { public: bool IsPrime(int n) { ) { return false; } || n == ) { return true; } ; i &l ...

  5. 「小程序JAVA实战」 小程序的事件(11)

    转自:https://idig8.com/2018/08/09/xiaochengxu-chuji-11/ 我们以前在web开发的时候,web页面也有一些相关的事件,当然小程序要接触屏幕要进行一些点击 ...

  6. Java微信公众平台开发(十二)--微信用户信息的获取

    转自:http://www.cuiyongzhi.com/post/56.html 前面的文章有讲到微信的一系列开发文章,包括token获取.菜单创建等,在这一篇将讲述在微信公众平台开发中如何获取微信 ...

  7. 国庆前执行更新承诺SO交期 FP_SO2SAP

    每年9月20日到30号执行以下程序:创建日期为昨天的订单,且承诺交期为10月1到3号,则承诺交期需加7天:创建日期为昨天的订单, 承诺交期为4号到11月1日,承诺交期需加4天 存储过程:FP_SO2S ...

  8. ORA-00372此时无法修改文件5 ORA-01110数据文件5'M:\WWFDATA.dbf'

    错误提示如下图: ORA-00372此时无法修改文件5 ORA-01110数据文件5'M:\DB_DATA\SEINESCMDB\WWFDATA_DATA01.dbf' 分析原因及解决方法: 1.查看 ...

  9. LoadRunner Controller

    1.Controller的引入 1)需要Controller的原因?需要多个用户来模拟并发的时候. 2)一种强大的.成熟的工具的体现. 2. Controller的启动方式 1)LoadRunner ...

  10. C++——多线程

    1.多进程和多线程:进程是一个总任务,一个进程可能包含多个线程. 2.并行和并发: 并发的关键是你有处理多个任务的能力,不一定要同时. 并行的关键是你有同时处理多个任务的能力. 3.共享数据的管理和线 ...