栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++数据结构——排队等候

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++数据结构——排队等候

习题3-10 排队等候

某社会福利机构组织一项活动,参加的对象分为两类,一类是老年人(年龄≥60岁),另一类是年轻人(年龄<60岁)。但参加该项活动要排队等候,为了照顾老年人,排队等候时,老年人排到前面,年轻人排在后面,当老年人到来排队时,排到前面老年人排队部分的后面,年轻人到来排队时,排到整个队伍的最后。对于参加活动的n个人(5≤n≤15),建立并输出这n个人的排队的情况。

输入格式:

首先输入一个整数T,表示测试数据的组数,然后是T组测试数据。每组测试数据第一行输入一个整数n,表示有n个人,第二行输入n个整数ai(18≤ai≤80),表示活动参加者的年龄。

输出格式:

对于每组测试,在一行上输出排队的队伍信息(年龄),每两个数据之间留一个空格。

输入样例:
2
5
29 71 56 63 23
8
39 48 43 21 49 32 56 27
输出样例:
71 63 29 56 23
39 48 43 21 49 32 56 27

代码长度限制 16 KB 时间限制 400 ms 内存限制 64 MB

解题代码

#include
using namespace std;
int main()
{
    int T,n;
    int num;
    listyoung,old;
    cin>>T;
    while(T--){
    	cin>>n;
    	young.clear();
    	old.clear();
    	for(int i=0;i
    		cin>>num;
    		if(num>=60){
    			old.push_back(num);
			}else{
				young.push_back(num);
			}
		}
		int l=0;
		while(!old.empty()){
			if(l==0){
				cout<
				cout<<" "<
			if(l==0){
				cout<
				cout<<" "< 

解题思路

也比较简单吧,用队列写,我觉着用两个队列写比较简单,也没多用别的,用了STL
库,不想写的太复杂,暂时就这样,挺简单的,大于等于60的放一个队列,小于60的放一个队列,然后输出的时候先输出大于等于60的队列。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/847363.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号