题意:给你正视和側视图,求最多多少个,最少多少个

思路:贪心的思想。求最少的时候:由于能够想象着移动,尽量让两个视图的重叠。所以我们统计每一个视图不同高度的个数。然后计算。至于的话。就是每次拿正视图的高度去匹配側视求最大

#include <iostream>
#include <cstring>
#include <cstdio>
#include <algorithm>
using namespace std;
const int MAXN = 1000; int k;
int view[2][MAXN]; int main() {
int t;
scanf("%d", &t);
while (t--) {
scanf("%d", &k);
memset(view, 0, sizeof(view));
for (int i = 0; i < 2; i++)
for (int j = 0; j < k; j++) {
int x;
scanf("%d", &x);
view[i][x]++;
}
int Min = 0, Max = 0;
for (int i = 1; i < MAXN; i++)
Min += i * max(view[0][i], view[1][i]);
for (int i = 1; i < MAXN; i++)
for (int j = 1; j < MAXN; j++)
Max += min(i, j)*view[0][i]*view[1][j];
printf("Matty needs at least %d blocks, and can add at most %d extra blocks.\n", Min, Max-Min);
}
return 0;
}

UVA - 434 Matty&#39;s Blocks的更多相关文章

  1. 【UVA】434-Matty&#39;s Blocks

    一道非常easy想复杂的题,给出主视图和右视图,计算最少能用几个正方体组成相应的视图,以及最多还能加几块正方体. 求最多加入事实上就是求出最多的正方体数减去最少的,主要就是最少的不好求. 一開始各种模 ...

  2. UVA434 - Matty&#39;s Blocks

    option=com_onlinejudge&Itemid=8&page=show_problem&category=457&problem=375&mosms ...

  3. uva 434

    贪心 ~ #include <cstdio> #include <cstdlib> #include <cmath> #include <map> #i ...

  4. uva 101 POJ 1208 The Blocks Problem 木块问题 vector模拟

    挺水的模拟题,刚开始题目看错了,poj竟然过了...无奈.uva果断wa了 搞清题目意思后改了一下,过了uva. 题目要求模拟木块移动: 有n(0<n<25)快block,有5种操作: m ...

  5. UVA 816 - Abbott&#39;s Revenge(BFS)

    UVA 816 - Abbott's Revenge option=com_onlinejudge&Itemid=8&page=show_problem&category=59 ...

  6. uva 11825 Hackers&#39; Crackdown (状压dp,子集枚举)

    题目链接:uva 11825 题意: 你是一个黑客,侵入了n台计算机(每台计算机有同样的n种服务),对每台计算机,你能够选择终止一项服务,则他与其相邻的这项服务都终止.你的目标是让很多其它的服务瘫痪( ...

  7. UVA 10831 - Gerg&#39;s Cake(数论)

    UVA 10831 - Gerg's Cake 题目链接 题意:说白了就是给定a, p.问有没有存在x^2 % p = a的解 思路:求出勒让德标记.推断假设大于等于0,就是有解,小于0无解 代码: ...

  8. UVA 12103 - Leonardo&#39;s Notebook(数论置换群)

    UVA 12103 - Leonardo's Notebook 题目链接 题意:给定一个字母置换B.求是否存在A使得A^2=B 思路:随意一个长为 L 的置换的k次幂,会把自己分裂成gcd(L,k) ...

  9. UVA 11774 - Doom&#39;s Day(规律)

    UVA 11774 - Doom's Day 题目链接 题意:给定一个3^n*3^m的矩阵,要求每次按行优先取出,按列优先放回,问几次能回复原状 思路:没想到怎么推理,找规律答案是(n + m) / ...

随机推荐

  1. 斗地主(NOIP2015)

    原题传送门 神奇的题目.. 一开始我准备打暴力直接搜答案. 然后发现.. 无限TLE.. 因为O((logN)^14*T)BOOM.. 然后Zxyer告诉可以只DFS顺子...其他的可以一步搞出来.. ...

  2. android上USB Wifi调试记录

    https://wenku.baidu.com/view/cc3098c72f60ddccdb38a043.html?from=search

  3. Cookies/Session机制详解

    # 转载自:https://blog.csdn.net/fangaoxin/article/details/6952954/ 会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话 ...

  4. flask框架基本使用(2)(响应与重定向)

    #转载请留言联系 flask 框架基本使用(1):https://www.cnblogs.com/chichung/p/9756935.html 1. flask 自定义返回状态码与响应头 from ...

  5. AsBcd的意思

  6. yii2 ftp 的常规操作 上传 下载

    <?php function make_directory($ftp_stream, $dir){ // if directory already exists or can be immedi ...

  7. Codeforces Round 480 Div 2 光荣掉分记

    痛 痛苦 痛苦啊. 越接近黄名想的越多了啊…… 都说了不要在意rating这破玩意了…… 没出E就算了,策略问题. 居然还FST了: FST个D就算了: FST个A算个**啊. 紧张的时候总会写出一些 ...

  8. 通过命令行上传代码到GitHub

    自工作以来,本人第一次使用GitHub.下面是将本地的项目上传到GitHub的过程.上传代码的前提是:1.已注册GitHub账号:2.本地已安装Git. 第一步:远程Git仓库 进入本地的项目的根目录 ...

  9. highcharts 图例详解

    highcharts 图例 tooltip: {                                           },                      legend: { ...

  10. 五. 面向对象高级特性6. Java 泛型

    我们知道,使用变量之前要定义,定义一个变量时必须要指明它的数据类型,什么样的数据类型赋给什么样的值. 假如我们现在要定义一个类来表示坐标,要求坐标的数据类型可以是整数.小数和字符串,例如: x = 1 ...