题意:给了n个矩形的长和宽,可以翻转每一个矩形,也就是交换长和宽,让矩形的长或者宽形成非递增排列。
扫描二维码关注公众号,回复:
2185264 查看本文章
题解:模拟 第一次取最大的,后面每次取的时候先拿最大的和前面一个比较,<=就存进去,如果不行就拿小的看是<=前面那个存进去,否则输出no
c++:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,temp,a,b;
cin>>n;
cin>>a>>b;
temp=max(a,b);
for(int i=1; i<n; i++)
{
cin>>a>>b;
if (temp>=max(a,b)) temp=max(a,b);
else if (temp>=min(a,b)) temp=min(a,b);
else
{
printf("NO");
return 0;
}
}
printf("YES");
return 0;
}
python:
n=int(input())
s=[]
a,b=map(int,input().split())
s.append(max(a,b))
for i in range(1,n):
a,b=map(int,input().split())
if max(a,b)<=s[i-1]:
s.append(max(b,a))
elif min(a,b)<=s[i-1]:
s.append(min(a,b))
else:
print("NO")
exit()
print("YES")