Turn the Rectangles 1008B
standard output
There are nn rectangles in a row. You can either turn each rectangle by 9090 degrees or leave it as it is. If you turn a rectangle, its width will be height, and its height will be width. Notice that you can turn any number of rectangles, you also can turn all or none of them. You can not change the order of the rectangles.
Find out if there is a way to make the rectangles go in order of non-ascending height. In other words, after all the turns, a height of every rectangle has to be not greater than the height of the previous rectangle (if it is such).
The first line contains a single integer nn (1≤n≤1051≤n≤105) — the number of rectangles.
Each of the next nn lines contains two integers wiwi and hihi (1≤wi,hi≤1091≤wi,hi≤109) — the width and the height of the ii-th rectangle.
Print "YES" (without quotes) if there is a way to make the rectangles go in order of non-ascending height, otherwise print "NO".
You can print each letter in any case (upper or lower).
3
3 4
4 6
3 5
YES
2
3 4
5 5
NO
In the first test, you can rotate the second and the third rectangles so that the heights will be [4, 4, 3].
In the second test, there is no way the second rectangle will be not higher than the first one.
题意:这里有n个矩形,你可以让每个矩形旋转90度,可以旋转多次或者不旋转,但是你不能改变矩形的排列顺序,每一个矩形不能比它前一个矩形高,如果可以输出YES,否则输出NO。
分析:使第一个矩形的高最大,如果下一个矩形的宽和高的最小值小于它前一个矩形的高,比较:1,(1)如果宽大于前一个的高,则把该矩形的高作为高(2)如果高大于前一个矩形的高,则把该矩形的宽作为该矩形的高(3)如果宽和高均小于前一个的高,则找出宽和高较大的那个作为该矩形的高 2,如果该矩形的宽高最小值大于前一个矩形的高,那么直接输出NO
#include<cstdio>
#include<algorithm>
using namespace std;
int main()
{
int n,w[],h[];
while(~scanf("%d",&n))
{
for(int i=; i<=n; i++)
{
scanf("%d %d",&w[i],&h[i]);
}
int t1,t2,i;
for(i=; i<=n; i++)
{
if(i==)
t1=max(w[i],h[i]);
else
{
t2=min(w[i],h[i]);
if(t2<=t1)
{
if(w[i]>t1)
t1=h[i];
else if(h[i]>t1)
t1=w[i];
else if(w[i]<=t1&&h[i]<=t1)
t1=max(w[i],h[i]);
}
else
{
break;
}
} }
if(i==n+)
printf("YES\n");
else
printf("NO\n");
}
return ;
}
Turn the Rectangles 1008B的更多相关文章
- CF 1008B Turn the Rectangles(水题+贪心)
There are n rectangles in a row. You can either turn each rectangle by 90 degrees or leave it as it ...
- Codeforces Round #497 (Div. 2)B. Turn the Rectangles
Bryce1010模板 http://codeforces.com/contest/1008/problems #include <bits/stdc++.h> using namespa ...
- 2018SDIBT_国庆个人第一场
A - Turn the Rectangles CodeForces - 1008B There are nn rectangles in a row. You can either turn eac ...
- CF 497 div 2 B
B. Turn the Rectangles time limit per test 2 seconds memory limit per test 256 megabytes input stand ...
- Lesson 11 One good turn deserves another
Text I was having dinner at a restaurant when Tony Steele came in. Tony worked in a layer's office y ...
- webrtc进阶-信令篇-之三:信令、stun、turn、ice
webRTC支持点对点通讯,但是webRTC仍然需要服务端: . 协调通讯过程中客户端之间需要交换元数据, 如一个客户端找到另一个客户端以及通知另一个客户端开始通讯. . 需要处理NAT(网 ...
- HDU-4869 Turn the pokers
原题: Turn the pokers 思路:假设正面为0,反面为1.牌就像这样 000000....... .考虑到假如可以实现最终反面个数为m, 牌共n张, 则这n张排任取m个为反面 ...
- jQuery+turn.js翻书、文档和杂志3种特效演示
很好用的一款插件jQuery+turn.js翻书.文档和杂志3种特效演示 在线预览 下载地址 实例代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML ...
- poj-1314 Finding Rectangles
题目地址: http://poj.org/problem?id=1314 题意: 给出一串的点,有些点可以构成正方形,请按照字符排序输出. 因为这道题的用处很大, 最近接触的cv 中的Rectangl ...
随机推荐
- 面向对象的轮播js
1.自执行函数的前后要加分号 案例: ;(function(){})(); 2.面向对象的最大优势节省了许多内存 正式开写面向对象的轮播: <!DOCTYPE html> <html ...
- laraval一键安装包的下载地址
http://laravelacademy.org/resources-download
- volley 之GsonRequest
这是之前写的http://www.cnblogs.com/freexiaoyu/p/3955137.html 关于GsonReques的用户,这个在POST请求传参数的时候GsonRequest构造第 ...
- IP网络设计
一.总体规划 网络设计的分层思想 按照网络设计的分层思想,通常将网络分为:核心层.汇聚层和接入层三个部分.这三部分在功能上有明显差别 ,因此在IP设计上,有必要对这三个部分区别对待. 二.核心层 核心 ...
- [UE4]让子弹产生伤害
- Mybatis 系列1-环境搭建
[Mybatis 系列10-结合源码解析mybatis 执行流程] [Mybatis 系列9-强大的动态sql 语句] [Mybatis 系列8-结合源码解析select.resultMap的用法] ...
- Java GC2
虚拟机中共划分为3个代:年轻代,老年代,持久代:其中持久代主要存放Java类的类信息,与垃圾收集要收集的Java对象关系不大,年轻代和老年代的划分是对垃圾收集影响较大的 年轻代: HotSpot JV ...
- (转)利用WPF的ListView进行大数据量异步加载
原文:http://www.cnblogs.com/scy251147/archive/2012/01/08/2305319.html 由于之前利用Winform的ListView进行大数据量加载的时 ...
- HBase原理和架构
HBase是什么 HBase在生态体系中的位置 HBase vs HDFS HBase表的特点 HBase是真正的分布式存储,存储级别达到TB级别,而才传统数据库就不是真正的分布式了,传统数据库在底层 ...
- CSS的4种定位方式比较
CSS有四种定位(Positioning)方法:Static,Relative, Absolute和Fixed 元素flow, overlap 相对参照物: 能否用offset( top, left, ...