题目链接

题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1276

解题思路

两个队列模拟即可,注意:

  1. 必须每一轮都点完,而不是数到只剩三人了就停止。
  2. 如果本来就不大于三个人,直接输出。

Code(G++)

#include <bits\stdc++.h>using namespace std;
typedef long long ll;
double eps = 1e-7;//ofstream out("out1.txt");int main() {int t;cin >> t;int n;while (t--) {cin >> n;queue<int> a, b;for (int i = 1; i <= n; ++i) {a.push(i);}//模拟操作,先2后3while (a.size() > 3 or b.size() > 3) {int cnt = 0;while (a.size()) {int x = a.front();a.pop();if (++cnt % 2 != 0) {b.push(x);}}if(b.size() <= 3) break;cnt = 0;while (b.size()) {int x = b.front();b.pop();if (++cnt % 3 != 0) {a.push(x);}}}//将余下的数字加入数组并排序输出//a和b只可能有一个不为空int p[3];int cnt = 0;while (a.size()) {p[cnt++] = a.front();a.pop();}while (b.size()) {p[cnt++] = b.front();b.pop();}sort(p, p + cnt);for (int i = 0; i < cnt; ++i) {if (i != 0) cout << " ";cout << p[i];}cout << endl;}return 0;
}

【HDU 1276】士兵队列训练问题(两个队列模拟)相关推荐

  1. hdu 1276 士兵队列训练问题

    士兵队列训练问题 HDU - 1276 某部队进行新兵队列训练,将新兵从一开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始一至二报数,凡报到二的出列,剩下的向小序号方向靠拢,再从头开始进行 ...

  2. 解题报告:hdu 1276 士兵队列训练问题 - 简单题

    Problem Description 某部队进行新兵队列训练,将新兵从一开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始一至二报数,凡报到二的出列,剩下的向小序号方向靠拢,再从头开始进行 ...

  3. hdu 1276 士兵队列训练问题 (详解)

    题目 某部队进行新兵队列训练,将新兵从一开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始一至二报数,凡报到二的出列,剩下的向小序号方向靠拢,再从头开始进行一至三报数,凡报到三的出列,剩下的 ...

  4. HDU - 1276 士兵队列训练问题

    Description 某部队进行新兵队列训练,将新兵从一开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始一至二报数,凡报到二的出列,剩下的向小序号方向靠拢,再从头开始进行一至三报数,凡报 ...

  5. 【两个队列模拟栈】——栈与队列

    题目 用两个队列模拟实现栈的操作原题链接 思路 我是用两个list模拟的,没有用java的queue,下次用queue. 思想就是:元素进入一个list1,当list1中元素多余1个时,将list1的 ...

  6. 用两个队列模拟实现一个栈的过程

    栈具有"后进先出"的特点,即某个元素最后进入栈,却最先出栈:队列具有"先进先出"的特点,即元素从队尾依次进队列,依次从队头出队列:现在用两个队列模拟实现一个栈的 ...

  7. 1276 士兵队列训练问题【队列模拟】

    士兵队列训练问题 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total S ...

  8. hdoj 1276 士兵队列训练问题 模拟队列

    士兵队列训练问题 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total S ...

  9. 用队列实现栈--用两个队列模拟实现栈

    出栈:哪个队列不为空,将该队列中前n-1个元素挪到另一个空队列中,然后将该队列中仅剩的元素出队列. 入栈:哪个队列不为空,将元素放到哪个队列中即可. 获取栈顶元素:哪个队列不为空,该队列的队尾就是栈顶 ...

最新文章

  1. weblogic管理1——创建 和 删除一个domain
  2. STL链式存储结构——————list链表
  3. LVS(2)——针对于LVS的增删改方法
  4. java8 block_java8的CompletableFuture使用实例
  5. Java-JUC(六):创建线程的4种方式
  6. iOS开发之Quartz2D 二:绘制直线,曲线,圆弧,矩形,椭圆,圆
  7. 网络编程知识点复习(第一次)
  8. GX Works2快捷键
  9. IOS版本APP STORE上架流程
  10. ps计算机海报设计,海报设计(ps标准平面海报设计尺寸一般多大)
  11. python量化选股策略_【机器学习】第六课:基于SVM的量化选股策略
  12. 【Java并发编程】并发编程大合集
  13. 利用python进行数据分析(四)
  14. Error in `appstreamcli': double free or corruption (fasttop): 0x0000000002122000
  15. 伪指令 - ARM汇编指令(四)
  16. 有点甜的小姐姐,概念原画师Z.W.Gu作品
  17. MySQL 数据类型(摘自菜鸟教程)
  18. 蒋哲远 java_半场:蒋哲远射造威胁,亚泰0-0建业
  19. java下载我的世界1.11_我的世界Java版1.11
  20. 最详细的java调用含参数的python程序并且返回值

热门文章

  1. phpquery类php,一个基于phpQuery的php通用采集类分享
  2. id3决策树 鸢尾花 python_C4.5决策树Python代码实现
  3. mysql mariadb nodejs_Nodejs中使用mariadb库连接MySQL数据库
  4. 前端模拟数据的技术方案(二)
  5. Linux:入门基础
  6. 001.Parted工具使用
  7. 风云点评:Flash 与 Silverlight 终极大比拼
  8. 铭感文件目录_waf绕过
  9. [网络安全提高篇] 一一五.Powershell恶意代码检测 (3)Token关键词自动提取
  10. 【数据结构与算法】之深入解析“路径总和II”的求解思路与算法示例