问一道题(百度无果)
  • 板块灌水区
  • 楼主潇烟幕雨丶
  • 当前回复2
  • 已保存回复2
  • 发布时间2021/8/30 15:41
  • 上次更新2023/11/4 08:33:01
查看原帖
问一道题(百度无果)
552023
潇烟幕雨丶楼主2021/8/30 15:41

去重并排序后的记录每行一条。

先按GF的名字排序,如果名字相同,则按号码排序,如果号码也相同,那是一条重复的记录。

输入:7

TOMGF 9999999

TOMGF1 123456789

TOMGF2 123456789

TOMGF1 12345678

TOMGF11 545464

TOMGF5 23456789

TOMGF1 123456789

输出:

TOMGF 9999999

TOMGF1 12345678

TOMGF1 123456789

TOMGF11 545464

TOMGF2 123456789

TOMGF5 23456789

#include<bits/stdc++.h>
using namespace std;
struct phone
{
    int num;
	int name;
}GF[10010];
bool cmp(phone x,phone y)
{
	if (x.name!=y.name) return x.name<y.name;
	return x.num<y.num;
}
int n;
int main()
{
	cin>>n;
	for (int i=1;i<=n;i++)
	  cin>>GF[i].name>>GF[i].num;
	sort(GF+1,GF+1+n,cmp);
	for(int i=1;i<=n;i++)
	  if (GF[i].name==GF[i-1].name&&GF[i].num==GF[i].num) continue;
	   else cout<<GF[i].name<<' '<<GF[i].num<<endl;
}
2021/8/30 15:41
加载中...