站外题求助
  • 板块灌水区
  • 楼主EasyRememberName
  • 当前回复6
  • 已保存回复6
  • 发布时间2024/10/23 22:11
  • 上次更新2024/10/24 08:29:08
查看原帖
站外题求助
1230697
EasyRememberName楼主2024/10/23 22:11

题目描述 给定 n 个矩形,其中第 i 个矩形的长为 ai​,宽为 bi​。如果某个矩形的长不超过另一个矩形的长,且这个矩形的宽也不超过另一个矩形的宽。那么这个矩形就是可以嵌在另一个矩形里。

矩形之间可以多层嵌套,请计算这些矩形最多能嵌套多少层。注意每个矩形的长宽不可互换。

输入格式

第一行:单个整数 n

第二行到第 n+1 行:第 i+1 行有两个整数表示 ?? 与 ??。

输出格式

单个整数:表示矩形嵌套的最大层数。

乐子不会用LaTeX。

附上10pts代码(哇)

#include<bits/stdc++.h>
using namespace std;
struct node
{
	int c,k;
}a[200055];
bool cmp(node x,node y)
{
	return x.c<y.c&&x.k<y.k;
}
int n,ans=0;
int main()
{
	//freopen("nesting.in","r",stdin);
	//freopen("nesting.out","w",stdout);
	int i,j;
	cin>>n;
	for(i=1;i<=n;i++)
	{
		cin>>a[i].c>>a[i].k;
	}
	sort(a+1,a+n+1,cmp);
	for(i=1;i<=n;i++)
	{
		if(a[i].c>a[i-1].c&&a[i].k>a[i-1].k)
		{
			ans++;
		}
	}
	cout<<ans;
	return 0;
}
2024/10/23 22:11
加载中...