zoukankan      html  css  js  c++  java
  • 南邮NOJ卡片游戏

    题目描述

    桌上有一叠牌,从第一张牌(即位于顶面的牌)开始从上往下依次编号为1~n。当至少还剩两张牌时进行以下操作:把第一张扔掉,然后把新的第一张放到整叠牌的最后。


    输入

    输入n,n≤1000000。

    输出

    输出每次扔掉的牌,以及最后剩下的牌。

    样例输入

    7

    样例输出

    1 3 5 7 4 2 6

    #include <stdio.h>
    #include <stdlib.h>
    #include<iostream>
    using namespace std;
    #include<vector>
    #include<queue>
    int main()
    {
        int n;
        cin>>n;
        queue<int> que;
        for(int i=1;i<=n;i++)
        {
            que.push(i);
        }
        for(int i=1;i<=n-1;i++)
        {
            int temp=que.front();
            cout<<temp<<" ";
            que.pop();
            temp=que.front();
            que.push(temp);
            que.pop();
        }
        cout<<que.front()<<endl;
        return 0;
    }
    使用STL队列的一些函数,有一个清晰的数据变化规律,调用相应即可。

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    ps使logo背景色透明
    ps切图的基本操作
    json
    py3中reduce
    列表去重的多种方法
    python之小数据池
    基于中间件访问频率限制 每分钟时间间隔最多访问3次
    三种实现登录验证的方式
    时间复杂度
    importlib
  • 原文地址:https://www.cnblogs.com/Tobyuyu/p/4965741.html
Copyright © 2011-2022 走看看