LA 4636 积木艺术

时间:2021-08-12 07:19:53

https://vjudge.net/problem/UVALive-4636

题意:

给出正视图和侧视图,判断最少要用多少个立方体。

思路:

首先正视图里出现的积木个数都是必须的,记录下每一列积木的个数出现的次数,接下来看侧视图,如果侧视图某一列积木个数在主视图里找不到,那么就要额外的加上这一列积木数。

 #include<iostream>
#include<cstring>
#include<algorithm>
using namespace std; const int maxn = ; int vis[maxn]; int n, m; int main()
{
//freopen("D:\\txt.txt", "r", stdin);
int x;
while (~scanf("%d%d",&n,&m) && n && m)
{
int x;
int ans = ;
memset(vis, , sizeof(vis));
for (int i = ; i < n; i++)
{
scanf("%d", &x);
ans += x;
vis[x]++;
}
for (int i = ; i < m; i++)
{
scanf("%d", &x);
if (!vis[x]) ans += x;
else vis[x]--;
}
printf("%d\n", ans);
}
}