首页 > 其他分享 >PTA 7-1 通讯录排序

PTA 7-1 通讯录排序

时间:2024-12-11 20:02:44浏览次数:6  
标签:输出 nl int px PTA 通讯录 格式 排序 输入

输入n个朋友的信息,包括姓名、生日、电话号码,本题要求编写程序,按照年龄从大到小的顺序依次输出通讯录。题目保证所有人的生日均不相同。

输入格式:

输入第一行给出正整数n(<10)。随后n行,每行按照“姓名 生日 电话号码”的格式给出一位朋友的信息,其中“姓名”是长度不超过10的英文字母组成的字符串,“生日”是yyyymmdd格式的日期,“电话号码”是不超过17位的数字及+-组成的字符串。

输出格式:

按照年龄从大到小输出朋友的信息,格式同输出。

输入样例:

3
zhang 19850403 13912345678
wang 19821020 +86-0571-88018448
qian 19840619 13609876543

输出样例:

wang 19821020 +86-0571-88018448
qian 19840619 13609876543
zhang 19850403 13912345678

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

栈限制

8192 KB

#include <bits/stdc++.h>
using namespace std;
struct px{
    string name;
    int nl;
    string dh;
}a[10];
bool cmp(px x,px y){
    return x.nl<y.nl;
}
int main(){
    int num;
    cin>>num;
    for(int i=0;i<num;i++){
        cin>>a[i].name>>a[i].nl>>a[i].dh;
    }
    sort(a,a+num,cmp);
    for(int i=0;i<num;i++){
        cout<<a[i].name<<" "<<a[i].nl<<" "<<a[i].dh<<endl;
    }
    return 0;
}

 

 

标签:输出,nl,int,px,PTA,通讯录,格式,排序,输入
From: https://blog.csdn.net/2401_86494108/article/details/144375365

相关文章

  • 选择排序
    选择排序这里也用到了冒泡排序的写法。由题说明,用指针方法对10个整数按由大到小顺序排序。首先声明选择排序基本和冒泡排序法一样,只不过多加了一个调用函数环节。在后面会说明我的错误电点,同时我也会在另一篇冒泡排序中详细文字叙述效果图和代码可参照本文。代码如下`#include......
  • datagridview点击列头对当前列进行排序的功能无效
    DataGridView的默认行为是支持通过单击列头对列进行排序,但在以下情况下可能会取消该功能或无法使用:1.绑定的数据源不支持排序如果DataGridView的数据源是绑定到一个不支持排序的集合(例如,List或未实现IBindingList的对象),排序功能会被禁用。2.列的SortMode设置为DataG......
  • 【数据结构——查找】二叉排序树(头歌实践教学平台习题)【合集】
    目录......
  • 删除排序链表中的重复元素 II
    题解:/***Definitionforsingly-linkedlist.*structListNode{*intval;*structListNode*next;*};*/structListNode*deleteDuplicates(structListNode*head){intflag;//标记是否需要删除structListNode*dummy=(structList......
  • 算法--排序算法
    选择排序#选择排序#选择排序思路:#-每次从[i,n-1]区间中选择最小值,放到i位置上#-i取值为[0,n-1],因为如果最后只有一个数,则无需查询,i取值为[0,n-2]即可defselect_sort(nums:list[int]):n=len(nums)ifn<=1:returnforiinr......
  • C语言中实现归并排序(Merge Sort)
    归并排序(MergeSort)是一种基于分治法(DivideandConquer)的高效排序算法,具有稳定性和O(nlogn)的时间复杂度,特别适用于处理大规模数据。基本原理归并排序通过以下步骤实现排序:分割(Divide):递归地将数组分成两半,直到每个子数组仅包含一个元素。合并(Conquer):将两个有序子数组合......
  • PTA 约分最简分式(辗转相除法)
    作者 翁恺单位 浙江大学分数可以表示为分子/分母的形式。编写一个程序,要求用户输入一个分数,然后将其约分为最简分式。最简分式是指分子和分母不具有可以约分的成分了。如6/12可以被约分为1/2。当分子大于分母时,不需要表达为整数又分数的形式,即11/8还是11/8;而当分子分母相等......
  • 交换排序----快速排序
    快速排序快速排序是一种高效的排序算法,它采用分治法策略,将数组分为较小和较大的两个子数组,然后递归排序两个子数组。快速排序是Hoare于1962年提出的一种二叉树结构的交换排序方法,其基本思想为:任取待排序元素序列中的某元素作为基准值,按照该排序码将待排序集合分割成两子序列......
  • 常见的排序算法
    目录1.冒泡排序2.选择排序3.插入排序4.希尔排序5.递归6.归并排序7.快速排序排序的稳定性1.冒泡排序1.比较相邻的元素,如果前一个元素比后一个元素大,则交换这两个元素的位置。2.每一对相邻元素如此反复,从开始的第一对元素到结尾的最后一对元素。最终最后的位置就是......
  • 数据结构6.4——归并排序
    基本思想:归并排序是建立在归并操作上的一种有效的排序算法,该算法是采用分治法的一个非常典型的应用。将已有的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为,称为二路归并。核心思想:将两个已经排好序的数组,合成......