STL


私信TA

用户名:542013460649

访问量:2469

签 名:

等  级
排  名 14570
经  验 874
参赛次数 0
文章发表 7
年  龄 0
在职情况 学生
学  校 郑州轻工业大学
专  业

  自我简介:

解题思路:

注意事项:

/*
功能描述:
对容器内元素进行排序

函数原型:
sort(iterator beg, iterator end, _Pred);
第三个参数不写时,默认按照升序排列,自己如果想按降序排序,写一个返回值为布尔类型的排序函数
bool cmp(int a,int b) {
   return a>b;
}
或者第三个参数less<数据类型>()    //从小到大排序     less较小的
 greater<数据类型>()   //从大到小排序  greater较大的
*/
参考代码:

#include<iostream>
#include<algorithm>
#include<cstdio>

using namespace std;

int main()
{
	double x1,y1,x2,y2;  // (x1,y1) (x2,y2)
	double x3,y3,x4,y4;  // (x3,y3)  (x4,y4)
	cin>>x1>>y1>>x2>>y2;
	cin>>x3>>y3>>x4>>y4;
	
	//相离
	if((max(x1,x2)<min(x3,x4))||(min(y1,y2)>max(y3,y4))||
	   (max(x3,x4)<min(x1,x2))||(max(y1,y2)<min(y3,y4)))
	{
		cout<<"0.00";    // 输出数字一定要用双引号!!!! 
	} 
	//相交(其中有一种包含的情况,如果将x进行排序,那么不用讨论包含的情况) 
	else
	{
		double x[4]={x1,x2,x3,x4};
		double y[4]={y1,y2,y3,y4};
		sort(x,x+4);
		sort(y,y+4);
		double num;
		num=(x[2]-x[1])*(y[2]-y[1]);
		printf("%.2f",num);
	}
	return 0;
}


 

0.0分

9 人评分

  评论区

6
2022-11-01 22:57:27
  • «
  • 1
  • »