ningbooj--1655--木块拼接(贪心)
[1655] 木块拼接
4 4 2 6 4 2
YES
例子的图像可以是这样
6
BBBBBB
BBBBBB
AAAACC
AAAACC
AAAACC
AAAACC
By&Recoder
有两种情况,一种是三个并排,另一种是一个在上,然后下边的拼接,拼接的两个必须有一条边相等,并且相等的边加上上方的长方形短边等于长边
#include<cstdio>
#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;
struct node
{
int a,b;
}p[5];
int cmp(node s1,node s2)
{
if(s1.a==s2.a)
return s1.b>s2.b;
return s1.a>s2.a;
}
int main()
{
while(cin>>p[0].a>>p[0].b>>p[1].a>>p[1].b>>p[2].a>>p[2].b)
{
int flag=-1;
int maxx=-1,a=0,b=0;
for(int i=0;i<3;i++)
{
if(p[i].a>maxx||p[i].b>maxx)
{
maxx=max(p[i].a,p[i].b);
flag=i;
}
}
bool f=false;
int ans=0;
for(int i=0;i<3;i++)
{
if(p[i].a==maxx||p[i].b==maxx)
ans++;
if(p[i].a<p[i].b)
swap(p[i].a,p[i].b);
}
if(ans==3)
{
int sum=0;
for(int i=0;i<3;i++)
if(p[i].a==maxx)
sum+=p[i].b;
else
sum+=p[i].a;
if(sum==maxx)
f=true;
}
sort(p,p+3,cmp);
if(p[1].a==p[2].a&&p[1].a+min(p[0].a,p[0].b)==maxx)
f=true;
if(p[1].a==p[2].b&&p[1].a+min(p[0].a,p[0].b)==maxx)
f=true;
if(p[1].b==p[2].a&&p[1].b+min(p[0].a,p[0].b)==maxx)
f=true;
if(p[1].b==p[2].b&&p[1].b+min(p[0].a,p[0].b)==maxx)
f=true;
if(f)
printf("YES\n");
else
printf("NO\n");
}
return 0;
}
ningbooj--1655--木块拼接(贪心)的更多相关文章
- Chocolate&&木块拼接&&Cards&& Wet Shark and Bishops
B. Chocolate time limit per test 1 second memory limit per test 256 megabytes input standard input o ...
- HDOJ 1330 Deck(叠木块-物理题啊!贪心算法用到了一点)
Problem Description A single playing card can be placed on a table, carefully, so that the short edg ...
- leetcode 321. 拼接最大数(单调栈,分治,贪心)
题目链接 https://leetcode-cn.com/problems/create-maximum-number/ 思路: 心都写碎了.... 也许就是不适合吧.... 你是个好人... cla ...
- <算法竞赛入门经典> 第8章 贪心+递归+分治总结
虽然都是算法基础,不过做了之后还是感觉有长进的,前期基础不打好后面学得很艰难的,现在才慢慢明白这个道理. 闲话少说,上VOJ上的专题训练吧:http://acm.hust.edu.cn/vjudge/ ...
- POJ 1065 Wooden Sticks / hdu 1257 最少拦截系统 DP 贪心
参考链接:http://blog.csdn.net/xiaohuan1991/article/details/6956629 (HDU 1257 解题思路一样就不继续讲解) POJ 1065题意:给你 ...
- 【贪心】Codeforces 349B.Color the Fence题解
题目链接:http://codeforces.com/problemset/problem/349/B 题目大意 小明要从9个数字(1,2,--,9)去除一些数字拼接成一个数字,是的这个数字最大. 但 ...
- AtCoder Grand Contest 026 (AGC026) E - Synchronized Subsequence 贪心 动态规划
原文链接https://www.cnblogs.com/zhouzhendong/p/AGC026E.html 题目传送门 - AGC026E 题意 给定一个长度为 $2n$ 的字符串,包含 $n$ ...
- 【bzoj5073】[Lydsy1710月赛]小A的咒语 后缀数组+倍增RMQ+贪心+dp
题目描述 给出 $A$ 串和 $B$ 串,从 $A$ 串中选出至多 $x$ 个互不重合的段,使得它们按照原顺序拼接后能够得到 $B$ 串.求是否可行.多组数据. $T\le 10$ ,$|A|,|B| ...
- 【BZOJ4922】[Lydsy六月月赛]Karp-de-Chant Number 贪心+动态规划
[BZOJ4922][Lydsy六月月赛]Karp-de-Chant Number Description 卡常数被称为计算机算法竞赛之中最神奇的一类数字,主要特点集中于令人捉摸不透,有时候会让水平很 ...
随机推荐
- 移动web——bootstrap如何修改原组件
基本介绍 1.bootstrap提供了丰富的组件,但是有时候我们不仅要删除不必要的标签,还需要修改里面的样式 2.我们建议若是修改样式那么最好将源样式从css中拷贝出来,名字换掉,然后修改具体样式,这 ...
- [Windows Server 2012] 安装PHP+MySQL方法
★ 欢迎来到[护卫神·V课堂],网站地址:http://v.huweishen.com★ 护卫神·V课堂 是护卫神旗下专业提供服务器教学视频的网站,每周更新视频.★ 本节我们将带领大家:PHP+MyS ...
- JAVA中EXTENDS 与 IMPLEMENT 区别
简单说: 1.extends是继承父类,只要那个类不是声明为final或者那个类定义为abstract的就能继承,2.JAVA中不支持多重继承,但是可以用接口来实现,这样就要用到implements, ...
- zoom,zoom与haslayout的关系,zoom与transform: scale( )的区别
1.zoom:(缩放)
- CAD通过扩展记录实体向数据库读写用户自定义的全局数据(com接口VB语言)
VB代码实现如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 ...
- Linux常用命令(简单的常用)
1. 文件和目录 cd /home 进入 '/ home' 目录' cd .. 返回上一级目录 cd ../.. 返回上两级目录 cd 进入个人的主目录 cd ~user1 进入个人的主目录 cd ...
- How To:使用dmidecode获取机器序列号(Serial number)
使用dmidecode可以获取关于机器的诸多信息,比如机器的序列号 [root@dc1db01 ~]# dmidecode -s system-serial-number processor的 ...
- do{}while(0)
有时会在源码中或在写代码时在宏定义中用到do...while(0). 采用这种方式进行宏定义, 主要是为了防止出现以下错误 : do{}while(0) 空的宏定义避免出现warnning. #def ...
- 利用定时器 1和定时器0控制led1和led2分别 2hz和0.5hz闪烁
//利用定时器 1和定时器0控制led1和led2分别 2hz和0.5hz闪烁 #include<reg52.h> #define uchar unsigned char #define ...
- springcloud(五):Eureka提供数据的客户端连接Docker的mysql
一.提供数据的客户端需要连接数据了,因此需要我们使用mybatis了,等下使用idea生成mybaits和web的依赖 二.提供数据的客户端项目 1.创建项目 2.选择idea自动给我们生成的依赖 3 ...