`
com_xpp
  • 浏览: 376759 次
社区版块
存档分类
最新评论

一种排序

 
阅读更多

/*日期:2011-10-14
作者:xiaosi
题目:一种排序
*/


#include<iostream>
#include<set>
#include<iterator>
using namespace std;
struct Rect
{
int num,length,width;

};
bool operator<(const Rect& r1,const Rect& r2)
{
return r1.num<r2.num || r1.num==r2.num && r1.length<r2.length ||r1.num==r2.num&&r1.length==r2.length &&r1.width<r2.width;
}
istream& operator>>(istream& in,Rect& r)
{
in>>r.num;
int a,b;
cin>>a>>b;
r.length=max(a,b);
r.width=min(a,b);
return in;
}
ostream& operator<<(ostream& out,const Rect& r)
{
return out<<r.num<<" "<<r.length<<" "<<r.width;
}
int main()
{
int num;
cin>>num;
while(num--)
{
set<Rect> rs;
Rect r;
int n;
cin>>n;
while(n--)
{
cin>>r;
rs.insert(r);
}
copy(rs.begin(),rs.end(),ostream_iterator<Rect>(cout,"\n"));
}
}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics