7-45 银行业务队列简单模拟 (10 分)

简介: 7-45 银行业务队列简单模拟 (10 分)

7-45 银行业务队列简单模拟 (10 分)


设某银行有A、B两个业务窗口,且处理业务的速度不一样,其中A窗口处理速度是B窗口的2倍 —— 即当A窗口每处理完2个顾客时,B窗口处理完1个顾客。给定到达银行的顾客序列,请按业务完成的顺序输出顾客序列。假定不考虑顾客先后到达的时间间隔,并且当不同窗口同时处理完2个顾客时,A窗口顾客优先输出。


输入格式:


输入为一行正整数,其中第1个数字N(≤1000)为顾客总数,后面跟着N位顾客的编号。编号为奇数的顾客需要到A窗口办理业务,为偶数的顾客则去B窗口。数字间以空格分隔。


输出格式:


按业务处理完成的顺序输出顾客的编号。数字间以空格分隔,但最后一个编号后不能有多余的空格。


输入样例:


8 2 1 3 9 4 11 13 15



结尾无空行


输出样例:


1 3 2 9 11 4 13 15


结尾无空行


#include<iostream>
using namespace std;
int main(){
    int n,num,flag=0;
    cin>>n;
    int a[1000],oa=0,ca=0;
    int b[1000],ob=0,cb=0;
    for(int i=1;i<=n;i++){
        cin>>num;
        if(num%2==1)a[oa++]=num;
        else b[ob++]=num;
    }
    for(int i=1;ca<oa||cb<ob;i++){
        if(ca<oa){
            if(flag)cout<<' ';
            cout<<a[ca++];
            flag=1;
        }if(cb<ob&&i%2==0){
            if(flag)cout<<' ';
            cout<<b[cb++];
        }
    }
    return 0;
}
目录
相关文章
|
3月前
|
Java
生产与消费(多线程练习题)
生产与消费(多线程练习题)
17 0
|
5月前
|
测试技术
餐厅【候桌问题】(链表模拟队列)
餐厅【候桌问题】(链表模拟队列)
37 0
|
7月前
|
存储 Java API
Java实现判断休息日和节假日
Java实现判断休息日和节假日
371 0
|
9月前
|
Java
java数据结构31:银行业务队列简单模拟
设某银行有A、B两个业务窗口,且处理业务的速度不一样,其中A窗口处理速度是B窗口的2倍---即当A窗口处理完2个顾客时,B窗口处理完一个顾客。给定到达银行的顾客序列,请按业务完成的顺序输出顾客序列。假定不考虑顾客先后到达的时间间隔,并且当不同窗口同时处理完2个顾客时,A窗口顾客优先输出。
133 0
|
9月前
|
机器学习/深度学习 Cloud Native Go
1700. 无法吃午餐的学生数量:简单模拟+简单分类思想
这是 力扣上的 1700. 无法吃午餐的学生数量,难度为 简单。
123 0
|
10月前
|
存储 算法 调度
C语言模拟银行排队叫号(顺序队)
C语言模拟银行排队叫号(顺序队)
146 0
|
存储 Java 索引
不可上位!数据结构队列,老实排队,Java实现数组模拟队列及可复用环形队列
不可上位!数据结构队列,老实排队,Java实现数组模拟队列及可复用环形队列
115 0
不可上位!数据结构队列,老实排队,Java实现数组模拟队列及可复用环形队列
L2-037 包装机 (25 分)(队列加栈模拟)
L2-037 包装机 (25 分)(队列加栈模拟)
100 0
L2-037 包装机 (25 分)(队列加栈模拟)
7-46 银行排队问题之单队列多窗口服务 (10 分)
7-46 银行排队问题之单队列多窗口服务 (10 分)
230 0
|
消息中间件 关系型数据库 MySQL