数据结构栈学习 结构体sort排序 :生日相同问题

arkfactor 初赛笔试题 3448 2885
不断提升技能,才能在职场中立于不败之地!全网最全C++题库,助您成为编程领域的佼佼者。
按照循环,如果当前月份和前面一个人月份不同,出栈,如果栈为空,就入栈当前循环的这个人所有信息,然后continue,如果continue前不入栈,会拉下个大怨种    如何输出    首先排序姓名长度,接着使用compare函数比较字典序,完事输出#include

题目要求按照生日相同,我们用结构体储存所有数据,sort快速排序,排序内容首先按照月份从小到大排序,接着按照同样月份排序生日,最后处理一下名字部分就好了


大概思路就是这样,接下来仔细分析分析

    题目要求生日相同
    排序月份和日以后可以让所有的生日相同的人排成一队
    相当于从开头到这个子段的结尾都是同一个生日的人
    我们用栈来储存这个内容
    如果遇到下一个人和上一个人月份不同并且栈内不止一个人
    就输出,并且清空栈

如何判断只有一个人(没有相同生日)?
按照循环,如果当前月份和前面一个人月份不同,出栈,如果栈为空,就入栈当前循环的这个人所有信息,然后continue,如果continue前不入栈,会拉下个大怨种

    如何输出
    首先排序姓名长度,接着使用compare函数比较字典序,完事输出

数据结构栈学习  结构体sort排序 :生日相同问题-第1张图片-东莞河马信息技术
(图片来源网络,侵删)




AC代码

#include<cmath>
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<stack>
using namespace std;
struct node{
    string name;
    int y;
    int d;
    bool operator <(const node &b)const{
         return y<b.y;
    }
}a[500];
int p=0;
stack<string>name;
stack<int>y;
stack<int>d;
int ecnt=0;
string nm[1005];
int yu[1005];
int da[1005];
void pd(){
    memset(yu,0,sizeof(yu));
    memset(da,0,sizeof(da));
    while(!name.empty()){
        nm[++ecnt]=name.top();
        name.pop();
    }
    if(ecnt==1){
        ecnt=0;
        y.pop();
        d.pop();
        return ;
    }
    for(int i=1;i<=ecnt;i++){
        for(int j=i+1;j<=ecnt;j++){
            if(nm[i].length()>nm[j].length()){
                swap(nm[i],nm[j]);
            }
        }
    }
    for(int i=1;i<=ecnt;i++){
        for(int j=i+1;j<=ecnt;j++){
            if(nm[i].length()>nm[j].length()){
                swap(nm[i],nm[j]);
            }else if(nm[i].compare(nm[j])>0&&nm[i].length()==nm[j].length()){
                swap(nm[i],nm[j]);
            }
        }
    }
    cout<<y.top()<<" "<<d.top()<<" ";
    for(int i=1;i<=ecnt;i++){
        cout<<nm[i]<<" ";
    }
    cout<<endl;
    while(!y.empty()){
        y.pop();
        d.pop();
    }
    ecnt=0;
    p=1;
}
int main(){
    int n;
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>a[i].name>>a[i].y>>a[i].d;
    }
    sort(a+1,a+1+n);
    for(int i=1;i<=n;i++){
        for(int j=i+1;j<=n;j++){
            if(a[i].y==a[j].y&&a[i].d>a[j].d){
                swap(a[i],a[j]);
            }
        }
    }
    name.push(a[1].name);
    y.push(a[1].y);
    d.push(a[1].d);
    for(int i=2;i<=n;i++){    
        if(name.empty()){
            name.push(a[i].name);
            y.push(a[i].y);
            d.push(a[i].d);
        }else{
            if(a[i].y!=y.top()||a[i].d!=d.top()){
                string nn;
                if(!name.empty()){
                    nn=name.top();
                    name.pop();
                }
                if(name.empty()){
                    name.push(a[i].name);
                    y.push(a[i].y);
                    d.push(a[i].d);
                    continue;
                }
                name.push(nn);
                pd();
                name.push(a[i].name);
                y.push(a[i].y);
                d.push(a[i].d);
            }
            else{
                name.push(a[i].name);
                y.push(a[i].y);
                d.push(a[i].d);
            }
        }
    }
    string mn;
    if(!name.empty()){
        mn=name.top();
        name.pop();
    }
    if(name.empty()){
        if(!p) cout<<"None"<<endl;
        return 0;
    }
    name.push(mn);
    pd();
    return 0;
}


数据结构栈学习  结构体sort排序 :生日相同问题-第2张图片-东莞河马信息技术
(图片来源网络,侵删)


标签: int函数 pop

上一篇[C++比赛真题] 谁会赢?

下一篇当前分类已是最新一篇

发布评论 2885条评论)

评论列表

2024-07-07 07:08:52

一口气看完了,我要下去回味回味了!http://e3r.05ausg2.cn

2024-07-07 17:58:18

知识就是力量啊!http://wap.chifengzj.com

2024-07-07 17:59:43

鸟大了,什么林子都敢进啊!http://wap.hongshanhl.com

2024-07-09 00:15:53

顶顶更健康!http://www.jasontv.cn

2024-07-09 00:23:24

今天的心情很不错啊http://n8xa6i.szhuangtongbang.com

2024-07-09 01:13:33

看了这么多帖子,第一次看到这么高质量内容!http://gyg.fsdcsl.com

2024-07-09 01:47:33

论坛的人气不行了!http://nzxhz.fsdcsl.com

2024-07-09 02:33:49

好帖子!http://dhbrs.szhuangtongbang.com

2024-07-09 07:55:42

我默默的回帖,从不声张!http://3ft01.hp315.com/42/5.html

2024-07-09 10:59:31

今天上网不回帖,回帖就回精华帖!http://www.gxmlm.com/category-8.html

2024-07-09 11:41:32

看了这么多帖子,第一次看到这么有深度了!http://6dmzs.fsdcsl.com

2024-07-09 16:05:33

楼主英明!http://rhx.fsdcsl.com

2024-07-09 19:16:16

视死如归的架势啊!http://jqs1me.xibili.com

2024-07-09 21:52:51

无图无真相!http://osfh.scu-sh.cn

2024-07-10 00:17:53

楼上的真不讲道理!http://tlje.baishanct.com

2024-07-10 08:31:29

在哪里跌倒,就在那里多爬一会儿!http://gguyjr.scu-sh.cn

2024-07-10 10:33:12

楼主写的很经典!http://pz5f.gujinghotel.com

2024-07-10 17:43:35

楼主是在找骂么?http://i400.jlno1.com

2024-07-10 19:01:26

宇宙第一贴诞生了!http://kangmuizz.com/html/28a099854.html

2024-07-10 20:18:04

灌水不是我的目的!http://rlvhd.xibili.com

2024-07-10 23:06:21

怎么我回帖都没人理我呢?https://www.ejy365.com/info/ejy183367

2024-07-11 12:25:02

我对楼主的敬仰犹如滔滔江水绵延不绝!http://lbm0z.tjbp2p.com/07/4.html

2024-07-11 12:39:17

投楼主一票,不用谢哦!http://p346vx.bljzq.com

2024-07-11 13:58:03

楼主写的很经典!http://takla7.zqmrtnw.com

2024-07-11 14:12:52

楼主人气很旺!http://tdpli.longkangys.com.cn

2024-07-11 15:53:55

这篇文章真是让人受益匪浅!http://i9t78a.zqmrtnw.com

2024-07-11 16:03:57

楼主加油,看好你哦!http://e28f7.ningbotour.com

2024-07-11 16:04:14

知识就是力量啊!http://fda.ningbotour.com

2024-07-11 16:27:30

我只看看不说话。。。http://q0s.jhjxgs.com

2024-07-11 17:11:20

顶顶更健康!http://vs6ef.300000km.com

2024-07-11 17:55:08

太高深了,理解力不够用了!http://4nw.kmphszcy.com

2024-07-11 18:31:27

大神好强大!http://624iar.sczlcn.com

2024-07-11 19:22:17

东方不败还是灭绝师太啊?http://34a.shuaicaijituan.com

2024-07-11 19:43:45

我裤子脱了,纸都准备好了,你就给我看这个?http://hxh.kymiaomu.com

2024-07-11 20:40:45

坚持回帖!http://8957p1.ghwl-tjzx.com

2024-07-11 20:41:35

没人理我,好伤心啊!http://1p91x.ghwl-tjzx.com

2024-07-11 21:20:40

看了这么多帖子,第一次看到这么经典的!http://1tahy6.ghwl-tjzx.com

2024-07-11 21:21:01

没人理我,好伤心啊!http://4li.bljzq.com

2024-07-11 21:52:32

我对楼主的敬仰犹如滔滔江水绵延不绝!http://ivuv.5iao.cn

2024-07-11 22:39:25

好帖子!http://mb41.skyee361.com

2024-07-11 23:12:40

缺乏激情了!http://z4v5sv.longkangys.com.cn

2024-07-11 23:35:09

论坛的人气越来越旺了!http://m9osf.longkangys.com.cn

2024-07-11 23:45:14

微商货源网https://ccc444.com

2024-07-12 00:07:08

看帖回帖一条路!http://wnloi.shqmcg.com

2024-07-12 00:46:18

这位作者的文笔极其出色,用词精准、贴切,能够形象地传达出他的思想和情感。http://71d9xy.ojy022.cn

2024-07-12 01:04:13

一口气看完了,我要下去回味回味了!http://6ufl70.bljzq.com

2024-07-12 01:42:58

我裤子脱了,纸都准备好了,你就给我看这个?http://p30.ojy022.cn

2024-07-12 01:58:59

内容很有深度!http://zt444v.wzyuqi.com

2024-07-12 02:14:08

论坛的人气越来越旺了!http://tat9.energizeworld.cn

2024-07-12 02:17:26

缺乏激情了!http://jubb.kymiaomu.com

2024-07-12 02:42:08

读了楼主的帖子,顿时马桶就通了。。。http://t3f9.gongjuyou.com

2024-07-12 02:56:02

我回帖楼主给加积分吗?http://hf2ki.zqmrtnw.com

2024-07-12 02:57:07

楼主练了葵花宝典吧?http://5ju.zhijianly.com

2024-07-12 02:58:00

世界末日我都挺过去了,看到楼主我才知道为什么上帝留我到现在!http://w3n.zhijianly.com

2024-07-12 03:04:06

小弟默默的路过贵宝地~~~http://f2rm9.9ayp.com/k/5.html

2024-07-12 03:10:02

很多天不上线,一上线就看到这么给力的帖子!http://c6o.zqmrtnw.com

2024-07-12 03:16:44

林子大了,什么鸟都有了啊!http://6zpu5.zqmrtnw.com

2024-07-12 03:17:10

有内涵!http://m9ia7.zqmrtnw.com

2024-07-12 03:25:25

支持一下,下面的保持队形!http://z26.zqmrtnw.com

2024-07-12 03:32:15

收藏了,改天让朋友看看!http://js1.zhijianly.com

2024-07-12 03:33:30

楼主是好人!http://m9csn.029yilitong.com

2024-07-12 03:34:56

很多天不上线,一上线就看到这么给力的帖子!http://59b211.szxlzxw.cn

2024-07-12 03:42:16

网站做得不错http://dkves.ningbotour.com

2024-07-12 03:55:38

以后要跟楼主好好学习学习!http://f16i3.435231.com/x/4.html

2024-07-12 04:05:39

以后要跟楼主好好学习学习!http://zh9.ningbotour.com

2024-07-12 04:14:44

看帖回帖一条路!http://mlx4n.qy189.com/z/4.html

2024-07-12 04:28:08

看在楼主的面子上,认真回帖!http://9zwxm.tjshawoluobo.com

2024-07-12 04:51:18

内容很有深度!http://purng2.zoonkin.com

2024-07-12 04:57:37

楼上的这是啥态度呢?http://683.zoonkin.com

2024-07-12 04:58:10

信楼主,考试不挂科!http://x5cvew.longkangys.com.cn

2024-07-12 05:29:19

论坛的人气越来越旺了!http://x4i9s.designconsultation.com.cn

2024-07-12 05:32:58

看帖、回帖、拿分、走人http://n3j.longkangys.com.cn

2024-07-12 05:33:34

楼主最近很消极啊!http://di66.designconsultation.com.cn

2024-07-12 05:34:39

感谢楼主的推荐!http://8jtn.cjyswz.com.cn

2024-07-12 06:06:26

楼主是一个典型的文艺青年啊!http://wanglaoyaotufang.com/news/32f099517.html

2024-07-12 06:09:52

读了楼主的帖子,顿时马桶就通了。。。http://yawi7.fjyxw.com

2024-07-12 06:10:25

我只看看不说话。。。http://e2s.designconsultation.com.cn

2024-07-12 06:16:43

被楼主的逻辑打败了!http://ak5.designconsultation.com.cn

2024-07-12 06:24:05

我只看看不说话。。。http://6z8ui.tjbyj.com/2024/4.html

2024-07-12 06:31:17

吹牛的人越来越多了!http://69zmrg.wjf99.com

2024-07-12 06:50:49

关注一下!http://ligv2.xctcn.com

2024-07-12 06:51:01

不错哦,楼主这是要火的节奏啊!http://39tc5j.wjf99.com

2024-07-12 06:52:53

我对楼主的敬仰犹如滔滔江水绵延不绝!http://6r5.fjyxw.com

2024-07-12 07:39:46

看了这么多帖子,第一次看到这么有深度了!http://81lzg.aid555.com/2024/4.html

2024-07-12 07:44:25

楼上的这是啥态度呢?http://3ipqye.ghwl-tjzx.com

2024-07-12 07:47:22

东方不败外加灭绝师太啊!http://p85rn.nui.org.cn

2024-07-12 07:59:34

今天过得很不爽!http://78azv.elawojtowicz.com/01/4.html

2024-07-12 09:50:19

在这个版块混了这么久了,第一次看见这么给你的帖子!http://3e6pf.kjxcyy.com/01/5.html

2024-07-12 10:15:49

有内涵!http://c0vkq7.jbc16.com

2024-07-12 10:27:09

顶一个!http://lq2vk.longkangys.com.cn

2024-07-12 10:31:07

楼上的心情不错啊!http://48wiy.skyee361.com/3/5.html

2024-07-12 11:30:21

楼上的能详细介绍一下么?http://mhs28q.longkangys.com.cn

2024-07-12 11:40:54

看帖回帖一条路!http://zpzp.05ausg2.cn

2024-07-12 12:09:21

读了楼主的帖子,顿时马桶就通了。。。http://okv.longkangys.com.cn

2024-07-12 13:17:51

感觉不错!http://9lx.05ausg2.cn

2024-07-12 14:02:05

收藏了,以后可能会用到!http://x3a.xiaoxiongxc.cn

2024-07-12 14:20:32

宇宙第一贴诞生了!http://qn2fiv.zhijian.me

2024-07-12 16:22:15

这里的资源非常丰富,帮助我解决了很多问题。http://6uk.longkangys.com.cn

2024-07-12 16:52:53

灌水不是我的目的!http://npfl.cn/news/89c399550.html

2024-07-12 17:16:15

楼主就是我的榜样哦http://sg2s.longkangys.com.cn