/*日期:2011-10-14
作者:xiaosi
题目:一种排序
*/
#include<iostream>
#include<cstdio>
#include<stdlib.h>
using namespace std;
struct Rectangle
{
int num;
int a;
int b;
int l;
int w;
}R[1000];
int cmp( const void *a , const void *b )
{
struct Rectangle *c = (Rectangle *)a;
struct Rectangle *d = (Rectangle *)b;
if(c->a > c->b)
{
c->l=c->a;
c->w=c->b;
}
else
{
c->l=c->b;
c->w=c->a;
}
if(d->a >d->b)
{
d->l=d->a;
d->w=d->b;
}
else
{
d->l=d->b;
d->w=d->a;
}
if(c->num!=d->num)
{
return c->num - d->num;
}
else if(c->l!=d->l)
{
return c->l - d->l;
}
else
{
return c->w - d->w;
}
}
int main()
{
int N;
while(scanf("%d",&N)!=EOF)
{
while(N--)
{
int n,i;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d %d %d",&R[i].num,&R[i].a,&R[i].b);
}
qsort(R,n,sizeof(R[0]),cmp);
for(i=0;i<n;i++)
{
while((R[i].num==R[i+1].num)&&(R[i].l==R[i+1].l)&&(R[i].w==R[i+1].w))
{
i++;
}
printf("%d %d %d\n",R[i].num,R[i].l,R[i].w);
}
}
}
return 0;
}
分享到:
相关推荐
论文研究-不确定性多属性决策中区间数的一种排序方法.pdf, 为了解决具有不确定性区间数的多属性决策问题,本文给出了一种分析方法.首先是基于文献[5],介绍了一个...
一种排序思想,抛开内存问题,认为,如果不考虑计算机运算开支,仅从逻辑便利性而言,可以一试
快速排序也叫快排,以动画展示快排的全过程(最快的一种排序),以动画的形式展现排序的逻辑,顺序,效率,一目了然,适合新手理解
编制一维数组排序程序。数组大小n用全局变量定义,数组数据从文本文件中读入或随机生成。包含冒泡排序、选择排序、插入排序三种排序方法。程序能够选择使用任何一种方法排序。
利用随机函数产生30000个随机整数,利用插入排序、起泡排序、选择排序、快速排序、堆排序、归并排序等排序方法进行排序,并统计每一种排序上机所花费的时间.zip
练习场 - ACM在线评测系统的第八题,用c++写的
三种冒泡排序算法的例子,比较区别与联系!
(1) 统计每一种排序上机所花费的时间。 (2) 统计在完全正序,完全逆序情况下记录的比较次数和移动次数。 (3) 比较的指标为关键字的比较次数和记录的移动次数(一次记录交换计为3次移动)。 (4) 对结果作简单分析,包括...
针对角对称矩阵的特征值分解问题,提出了一种新的排序Jacobi算法(S-Jacobi).该算法利用Jacobi旋转中的内角和外角实现了特征值的自动排序.仿真结果表明,S-Jacobi的收敛条件在实际中容易满足,而且其收敛速度优于...
1、常见排序算法实现(1-6选择几个算法练习) 1)问题描述:输入一组关键字序列分别实现下列排序。 (1)实现简单选择排序、直接插入...2、在上题的基础上增加功能(程序改名另存):增加变量统计每一种排序的比较次数.
本资源包含《数据结构》考研的九种内部排序算法考点的算法代码及排序过程图示,以表格、图文方式详细讲解每一种排序算法的排序过程。 包含的九种内部排序有:直接插入排序、折半排序、希尔排序、冒泡排序、快速排序...
利用随机函数产生N个随机整数(20000以上),对这些数进行多种方法进行排序。 1) 分别采用的方法有插入排序、...2) 统计每一种排序方法的性能(以上机运行程序所花费的时间为准进行对比),找出其中两种较快的方法。
超级经典的计数排序算法,号称效率达到了O(n) 超级经典的计数排序算法,号称效率达到了O(n) 超级经典的计数排序算法,号称效率达到了O(n) 超级经典的计数排序算法,号称效率达到了O(n) 超级经典的计数排序算法,号称...
2) 统计每一种排序方法的性能(以上机运行程序所花费的时间为准进行对比),找出其中两种较快的方法。 分析: 本系统实现了几种常用的排序方法,包括:插入排序、起泡排序、快速排序(递归、非递归)、堆排序。
冒泡排序,是指计算机的一种排序方法,它的时间复杂度为O(n^2),虽然不及堆排序、快速排序的O(nlogn,底数为2),但是有两个优点:1.“编程复杂度”很低,很容易写出代码;2.具有稳定性,这里的稳定性是指原序列...
2) 统计每一种排序方法的性能(以上机运行程序所花费的时间为准进行对比),找出其中两种较快的方法。 3) 如果采用4种或4种以上的方法者,可适当加分。 PS:采用了直接选择排序算法、冒泡排序、希尔排序、直接插入...
利用随机函数产生N个随机整数(20000以上),对这些数进行多种方法进行排序。要求: 1)至少采用三种方法实现上述问题... 2)统计每一种排序方法的性能(以上机运行程序所花费的时间为准进行对比),找出其中两种较快的方法。
由于需要用到高效的超级列表框排序.就利用汇编版的希尔排序来写了一下超级列表框排序.发现,从取值-排序-显示过程...即可变身另一种排序,可算得上是简单实用通用型模块!!。请先编译后,再测试.@呵呵仙。Tags:快速排序。
(2)统计每一种排序方法的性能(以上机运行程序所花费的时间为准进行对比),找出其中两种较快的方法; (3)统计每种算法所用的比较次数和交换次数,最后列表显示; (4)如果采用4种或4种以上的方法者,可适当...
可包含重复值的列表排序算法 返回值为: 排序后数据的新列表(从小到大/从大到小) 排序后数据在原列表中的索引列表(从小到大/从大到小) 原列表的数据量