博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一种排序
阅读量:5200 次
发布时间:2019-06-13

本文共 2131 字,大约阅读时间需要 7 分钟。

一种排序

时间限制:
3000 ms  |  内存限制:
65535 KB
难度:
3
描写叙述
如今有非常多长方形,每个长方形都有一个编号,这个编号能够反复;还知道这个长方形的宽和长,编号、长、宽都是整数;如今要求依照一下方式排序(默认排序规则都是从小到大);
1.依照编号从小到大排序
2.对于编号相等的长方形,依照长方形的长排序;
3.假设编号和长都同样。依照长方形的宽排序;
4.假设编号、长、宽都同样,就仅仅保留一个长方形用于排序,删除多余的长方形;最后排好序依照指定格式显示全部的长方形。
输入
第一行有一个整数 0<n<10000,表示接下来有n组測试数据;
每一组第一行有一个整数 0<m<1000。表示有m个长方形;
接下来的m行。每一行有三个数 ,第一个数表示长方形的编号,
第二个和第三个数值大的表示长。数值小的表示宽。相等
说明这是一个正方形(数据约定长宽与编号都小于10000);
输出
顺序输出每组数据的全部符合条件的长方形的 编号 长 宽
例子输入
181 1 11 1 11 1 21 2 11 2 22 1 12 1 22 2 1
例子输出
1 1 11 2 11 2 22 1 12 2 1
来源
上传者
思路:这题是先排序。再删减。。昨天我是先删减,再排序,结果wa了。。在讨论组里看到有个大神写的是先sort,再删减。

我心里想不一样吗。。

额,肯定是不一样的。

比方把长方形的3个属性用小写字母表示。比方開始输入是abca.先排序aabc,然后删减abc,得到正解。可是假设先删减,b数组里面存放仍然是abca,再排序aabc。就会有反复的。

。须要注意。

#include
#include
using namespace std;struct cfx{ int length; int width; int num;};int cmp(cfx a,cfx b){ if(a.num!=b.num) return a.num
>n; while(n--) { k=0; cin>>m;//m个长方形 for(i=0;i
>a[i].num>>a[i].length>>a[i].width; if(a[i].length
//今天又看了一下,能够不用申请b数组。。

#include

#include

using namespace std;
struct cfx
{
int chang;
int kuan;
int num;
};
int cmp(cfx a,cfx b)
{
if(a.num!=b.num)
return a.num

else if(a.num==b.num &&a.chang!=b.chang)
return a.chang

else if(a.num==b.num &&a.chang==b.chang &&a.kuan!=b.kuan)
return a.kuan

}
int main()
{
int T,m,i;
cfx a[1000];
cin>>T;
while(T--)
{
cin>>m;
for(i=0;i

{
cin>>a[i].num>>a[i].chang>>a[i].kuan;
if(a[i].chang

{
int t;
t=a[i].chang;
a[i].chang=a[i].kuan;
a[i].kuan=t;
}
}
sort(a,a+m,cmp);//排序
for(i=0;i

{
while(i

{

i++;

}

cout<
<<" "<
<<" "<
<

}

}

return 0;

}
 

版权声明:本文博客原创文章,博客,未经同意,不得转载。

转载于:https://www.cnblogs.com/bhlsheji/p/4721190.html

你可能感兴趣的文章
ios iphone ipad上iframe的宽度会扩大的解决办法
查看>>
怎样解决ASP图片上传漏洞的方法
查看>>
Python内置函数(36)——iter
查看>>
事件双向绑定原理
查看>>
HTML标签_1
查看>>
117. Populating Next Right Pointers in Each Node II
查看>>
[Angular] @ViewChildren and QueryLists (ngAfterViewInit)
查看>>
jsp组成元素
查看>>
排序算法(转)
查看>>
windows自带的可生成各种数据库连接字符串工具打开方法
查看>>
python def 定义函数
查看>>
音频相关知识
查看>>
Linux查看系统开机时间(转)
查看>>
form表单中method的get和post区别
查看>>
【做题】arc068_f-Solitaire——糊结论
查看>>
Poj 1094 拓扑排序 水题
查看>>
Oracle SQL查询,日期过滤条件要注意的一点
查看>>
链表快排
查看>>
链表操作合集
查看>>
C# 编写通用的JSON数据进行序列化和反序列化
查看>>