长方形的关系

描述

给出两个长方形的长和宽(长不一定大于宽),实现长方形类的一个方法,判定前者是否能完全覆盖后者。

输入描述:

输入4个整数,前两个表示第一个长方形的长和宽,后两个表示第二个长方形的长和宽。

输出描述:

如果前者能完全覆盖后者输出"yes"否则输出"no"

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
class rectangle{
	private:
		int length,width;
	public:
		void set(int x,int y){
			length=x;
			width=y;
		}
		int getlength(){
			return length;
		}
		int getwidth(){
			return width;
		}
		int area(){
			return length*width;
		}
		int find_max(){
			return (length > width)?length:width;
		} 
		int find_min(){
			return (length < width)?length:width;
		} 
		// int find_max()
		// {
		// 	if(length >width)
		// 	return length;
		// 	else
		// 	 return width;
		// }
		// int find_min()
		// {
		// 	if(length < width)
		// 	return length;
		// 	else
		// 	 return width;
		// }
		string cancover(rectangle b)
		{
			if((this->find_max() >= b.find_max()) &&(this->find_min() >= b.find_min()))
			{
				return "yes";
			}else {
			return "no";
			}
		}
};
int main(){
	int l1,w1,l2,w2;
	cin>>l1>>w1>>l2>>w2;
	rectangle a,b;
	a.set(l1,w1);
	b.set(l2,w2);
	cout<<a.cancover(b);
	return 0;
}
cpp 复制代码
#include <iostream>
#include <algorithm>//用max、min函数
using namespace std;

//长方形类
class Rectangle{
	private:
		int length;
		int width;

	public:
	//设置长宽
	void setValue(int x,int y)
	{
		length = x;
		width = y;		
	}
	//判断当前长方形能否覆盖另一个长方形
	bool cover(Rectangle r)
	{
		//把自己的长边、短边算出来
		// my_max、my_min 就是 this->max、this->min
    // 也就是:当前调用这个方法的长方形自己!
		int my_max = max(length,width);
		int my_min = min(length,width);

		//把对方的长边、短边算出来
		int r_max = max(r.length,r.width);
		int r_min = min(r.length,r.width);
		// 自己的大边 ≥ 对方大边  并且  自己的小边 ≥ 对方小边
			if (my_max >= r_max && my_min >= r_min) {
				return true;  // 能覆盖
			} else {
				return false; // 不能覆盖
			}
	}
};

int main() {
    int l1, w1, l2, w2;
    cin >> l1 >> w1 >> l2 >> w2;

    Rectangle r1, r2;
    r1.set(l1, w1);
    r2.set(l2, w2);

//this 就是 r1,r 就是 r2
    if (r1.cover(r2)) {
        cout << "yes" << endl;
    } else {
        cout << "no" << endl;
    }

    return 0;
}
相关推荐
xxwxx__14 分钟前
C++ STL set 与 map 全套详解:关联式容器、红黑树底层、代码坑点、刷题实战
数据结构·c++
6Hzlia18 分钟前
【Classic 150 刷题计划】 LeetCode 58. 最后一个单词的长度 | C++ 极简反向遍历与单变量状态机
算法
AgentMaster28 分钟前
企业如何应用智能客服?5 个典型场景的技术架构与实施路径
大数据·算法
程曦曦1 小时前
MySQL 生产库误删 98 张表后的时间点恢复实战:从 binlog 解析到资金对账
linux·数据结构·其他·算法·ubuntu·运维开发
郝学胜-神的一滴1 小时前
Effective Python 条款 13:善用星号解包,告别下标切片拆分的坑
服务器·开发语言·数据结构·python·程序人生·pycharm
Logic1011 小时前
C语言/数据结构位运算题解:异或XOR找出流水线上的“独特零件编号“——只出现一次的数字
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
j7~2 小时前
【Linux网络加餐】(篇六)网络版计算器(上):模板方法模式、序列化与 JSON
linux·c++·json·序列化·反序列化·网络版计算机
weixin_307779132 小时前
C++代码实现MATLAB中的ode45函数功能
开发语言·c++·算法·matlab
张小姐的猫2 小时前
【AI大模型接入SDK】 —— 数据管理 & 与Session模块进行联动
数据结构·数据库·c++·人工智能·python·chatgpt
不穿鞋的懒羊羊2 小时前
dfs深度优先搜索
算法