PTA 7-3(队列) 银行业务队列简单模拟(25 分) 25分代码

。。

(注: 博客作为交流使用,请勿抄袭应付作业)


#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#define PI acos(-1.0)
#define in freopen("in.txt", "r", stdin)
#define out freopen("out.txt", "w", stdout)
using namespace std;
typedef long long ll;
const int maxn = 1000 + 7, INF = 0x3f3f3f3f, mod = 1e9 + 7;
int n;
queue q1, q2;

void init() {
    scanf("%d", &n);
    int x;
    for(int i = 0; i < n; ++i) {
        scanf("%d", &x);
        if(x % 2) q1.push(x);
        else q2.push(x);
    }

}

void solve() {
    int f = 0;
    while(!q1.empty() && !q2.empty()) {
        if(!q1.empty()) { if(f!=0) printf(" "); if(f==0) f=1; cout << q1.front(); q1.pop(); }
        if(!q1.empty()) { if(f!=0) printf(" "); if(f==0) f=1;cout << q1.front(); q1.pop(); }
        if(!q2.empty()) { if(f!=0) printf(" "); if(f==0) f=1;cout << q2.front(); q2.pop(); }
    }
    while(!q1.empty()) { if(f!=0) printf(" "); if(f==0) f=1;cout << q1.front(); q1.pop(); }
    while(!q2.empty()) { if(f!=0) printf(" "); if(f==0) f=1;cout << q2.front(); q2.pop(); }
}

int main() {
    init();
    solve();
    return 0;
}
/*
8 2 1 3 9 4 11 13 15
*/


你可能感兴趣的:(PTA)