Studying Father's luogu blog

Studying Father's luogu blog

从零至灵,由壹达意

题解 CF1153B 【Serval and Toy Bricks】

posted on 2019-04-15 22:55:17 | under 题解 |

并不算难的构造题。

一种简单粗暴的构造方法就是,对于有方块的格子,高度直接取为主视图对应列的高度和左视图对应行的高度的最小值。

#include <cstdio>
#include <algorithm>
using namespace std;
int a[105],b[105],h[105][105],res[105][105];
int main()
{
 int n,m,w;
 scanf("%d%d%d",&n,&m,&w);
 for(int i=1;i<=m;i++)
  scanf("%d",&a[i]);
 for(int i=1;i<=n;i++)
  scanf("%d",&b[i]);
 for(int i=1;i<=n;i++)
  for(int j=1;j<=m;j++)
   scanf("%d",&h[i][j]);
 for(int i=1;i<=n;i++)
  for(int j=1;j<=m;j++)
   if(h[i][j]==0)res[i][j]=0;
   else res[i][j]=min(a[j],b[i]);
 for(int i=1;i<=n;i++)
 {
  for(int j=1;j<=m;j++)
   printf("%d ",res[i][j]);
  puts("");
 }
 return 0;
}