UVALive - 7267 Mysterious Antiques in Sackler Museum
/*这题如果想明白以后,其实并没有那么难两个长方形A, B若要合并,(a1 == b1 || a1 == b2 || a2 == b1 || a2 == b2)四种条件中,必定要满足至少一个,也就是说,两个长方形必有相等的边,假设这两个长方形已经合成了一个大长方形第三个长方形,如果要和大三角形合并,除非有边和它们相等的那条边相等,或者有边和它们合并后得到的边相等因为就4种情况,循环反而并不太好,因为循环一般是4个三角形组成的排列,而非组合,可能会枚举重复的情况,虽然不会造成答案错误,但毕竟不太完美...对这题而言,枚举反而更好参考了此博客的思路:http://www.cnblogs.com/Ritchie/p/5741823.html
*/
#include <iostream>
//#define debug
using namespace std;struct triangle
{int w, h;triangle(int _w = 0, int _h = 0):w(_w), h(_h){}bool isvalid(){return (w > 0 && h > 0);}
}a[4];typedef triangle tri;tri unite(tri i, tri j)
{if (i.h == j.h) return tri(i.h, i.w + j.w);if (i.h == j.w) return tri(i.h, i.w + j.h);if (i.w == j.w) return tri(i.w, i.h + j.h);if (i.w == j.h) return tri(i.w, i.h + j.w);return tri(-1, -1);
}bool judge(tri a, tri b, tri c)
{if (( unite( unite(a, b), c ) ).isvalid() || ( unite( unite(a, c), b ) ).isvalid() || ( unite( unite(b, c), a ) ).isvalid()) return true;return false;
}void solve()
{if (judge(a[0], a[1], a[2]) || judge(a[0], a[1], a[3]) || judge(a[0], a[2], a[3]) || judge(a[1], a[2], a[3])) cout << "Yes" << endl;else cout << "No" << endl;
}int main()
{#ifdef debugfreopen("E:\\in.txt", "r", stdin);freopen("E:\\out.txt", "w", stdout);#endifint t;cin >> t;while (t--){for (int i = 0; i < 4; i++) cin >> a[i].w >> a[i].h;solve();}#ifdef debugfclose(stdin);fclose(stdout);#endifreturn 0;
}
转载于:https://www.cnblogs.com/mofushaohua/p/7789548.html
UVALive - 7267 Mysterious Antiques in Sackler Museum相关推荐
- 2015北京区域赛 Mysterious Antiques in Sackler Museum 几何基础+思维
题意是,选出三个,看看是否可以凑成一个新的矩形. #include<bits/stdc++.h> using namespace std; struct node { int cnt[2] ...
- DP UVALive 6506 Padovan Sequence
题目传送门 /*题意:两行数字,相邻列一上一下,或者隔一列两行都可以,从左到右选择数字使和最大DP:状态转移方程:dp[i][j] = max (dp[i][j], dp[1-i][j-1] + a[ ...
- The UVALIVE 7716 二维区间第k小
The UVALIVE 7716 二维区间第k小 /** 题意:给一个n * n的矩阵,有q个查询每次查询r,c,s,k表示已(r,c)为右上角 大小为s的正方形中 第k小的元素n <= 250 ...
- UVALive 8513 lovers 2017 西安区域赛 B 贪心+multiset
UVALive 8513 有2种人,每个人有自己的权值$A_i$ $B_i$ 当$A_i + B_i >=K$时 两个人可以配对 问最多多少人可以配对 解法 : 把$/{ A_i /}$ 排序 ...
- 训练指南 UVALive - 3713 (2-SAT)
layout: post title: 训练指南 UVALive - 3713 (2-SAT) author: "luowentaoaa" catalog: true mathja ...
- 逆序数 UVALive 6508 Permutation Graphs
题目传送门 1 /* 2 题意:给了两行的数字,相同的数字连线,问中间交点的个数 3 逆序数:第一行保存每个数字的位置,第二行保存该数字在第一行的位置,接下来就是对它求逆序数 4 用归并排序或线段树求 ...
- poj 2696 A Mysterious Function
A Mysterious Function Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 3517 Accepted: ...
- Infinite Fraction Path UVALive - 8207
Infinite Fraction Path UVALive - 8207 题意: 给你n个数,每个数在0到9之间,每个数的下标一次是0~n-1,然后他所能走到的数为(i^2+1)%n,i为他本身的下 ...
- F - Heron and His Triangle UVALive - 8206
F - Heron and His Triangle UVALive - 8206 题意: 给你应该n,然后求一个最小的t,问长度为t-1,t,t+1所组成的三角形的面积为整数,t>=n 题解: ...
- Tree UVALive - 8212
Tree UVALive - 8212 题意: 有n个点,k个颜色,每个点都要被染色,相同颜色之间的边算是被该颜色覆盖,问有多少边被所有颜色覆盖 题解: 题目给的是无根树,我们可以将1默认为根然后求所 ...
最新文章
- 输入n,求n位以内的水仙花数
- 莫名其妙的突然想学日语了, 开始接触日语,希望能坚持下去。
- 【Python】Pyecharts数据可视化模块练习
- 表头大小设置_Excel技巧:单线表头及多线表头的制作方法
- 修改eclipse默认编码方式
- 【PAT - 甲级1004】Counting Leaves (30分) (dfs,递归)
- 数据集中异常值的处理之lof,iforest算法
- WPS - 数据对比在excel中经常用到,那么如何在excel中进行数据对比呢?
- 二元关系的矩阵和图表示
- 数显之家快讯:【SHIO世硕心语】古有《陋室铭》,现有《群之铭》!
- 街头篮球上读取服务器维护,《街头篮球》九月新版引入超级服务器
- android wear 兼容问题,多款Android Wear手表不兼容iPhone 7
- modelsim与debussy的联合仿真
- 磁悬浮惯性动量轮技术_第1章_绪论
- python语法速记, Python 3 Cheat Sheet
- (J3455/J3155/J4015/J4105/……)无线网卡M.2(ngff) keyA/E接口扩展sata硬盘接口,黑群辉NAS系统
- oracle练习题(二)
- nodejs express搭建服务器(爬虫知乎精华帖,个人学习用)六 在express中建立路由
- 面试题目之:mvvm框架是什么?它与其他框架(jquery)的区别是什么?哪些场景适合?
- 用vc对oracle数据库编程,用VC开发基于ORACLE数据库应用程序
热门文章
- InDesign 软件教程,如何新建文档?
- 苹果 14 英寸和 16 英寸 MacBook Pro 硬件功能介绍
- 苹果Mac知识大纲管理神器:OmniOutLiner
- A Better Finder Attributes 7 Mac版(文件批量重命名)
- 如何永久的关闭macOS 更新提示?
- RazorSQL for Mac:查看和编辑二进制数据和图像
- OA系统中的HRM的发展和存在的误区,值得每一个HR学习
- 数组reduce()方法
- Codeforces 385C 线性筛素数
- Neutron Vlan Network 原理- 每天5分钟玩转 OpenStack(92)