HOJ 1276 士兵队列训练问题(stl, 水题)
stl, 水题
本题要点:
1、用 list 模拟即可。
2、题目可能的歧义的地方:
有两种选法,
选法1:每2个出列一个,
选法2:每3个出列一个。
结束条件,每完成一种选法后,如果剩下的数 <= 3, 则结束。
可能歧义的理解: 执行某种选法,执行过程中(还没结束), 当前的数的数量 <= 3, 此时就结束了。
#include <cstdio>
#include <cstring>
#include <iostream>
#include <list>
using namespace std;
const int MaxN = 5010;
int T, n;void handle(list<int> &li)
{list<int>::iterator it = li.begin();int cnt = 0;while(li.size() > 3){cnt = 0;it = li.begin();while(it != li.end()){++cnt;if(cnt % 2 == 0){it = li.erase(it);}else++it;}if(li.size() <= 3)return;cnt = 0;it = li.begin();while(it != li.end()){++cnt;if(cnt % 3 == 0)it = li.erase(it);else++it;}}
}void solve()
{list<int> li;for(int i = 1; i <= n; ++i)li.push_back(i);handle(li);list<int>::iterator it = li.begin();printf("%d", *it); ++it;while(it != li.end()){printf(" %d", *it);++it;}printf("\n");
}int main()
{scanf("%d", &T);while(T--){scanf("%d", &n);solve();}return 0;
}/*
2
20
40
*//*
1 7 19
1 19 37
*/
HOJ 1276 士兵队列训练问题(stl, 水题)相关推荐
- 1276 士兵队列训练问题【队列模拟】
士兵队列训练问题 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total S ...
- hdu4585 STL水题
题意: 成立少林寺,刚开始有一个大师,id是1,攻击力是10E,现在陆续来人,每个人有自己的id,和自己的攻击力,但是每一个新来的要和之前的和尚pk,他必须选择和他攻击力差值最小的那个,如 ...
- hdu 1276 士兵队列训练问题
士兵队列训练问题 HDU - 1276 某部队进行新兵队列训练,将新兵从一开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始一至二报数,凡报到二的出列,剩下的向小序号方向靠拢,再从头开始进行 ...
- hdoj 1276 士兵队列训练问题 模拟队列
士兵队列训练问题 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total S ...
- 解题报告:hdu 1276 士兵队列训练问题 - 简单题
Problem Description 某部队进行新兵队列训练,将新兵从一开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始一至二报数,凡报到二的出列,剩下的向小序号方向靠拢,再从头开始进行 ...
- hdu 1276 士兵队列训练问题 (详解)
题目 某部队进行新兵队列训练,将新兵从一开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始一至二报数,凡报到二的出列,剩下的向小序号方向靠拢,再从头开始进行一至三报数,凡报到三的出列,剩下的 ...
- HDU - 1276 士兵队列训练问题
Description 某部队进行新兵队列训练,将新兵从一开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始一至二报数,凡报到二的出列,剩下的向小序号方向靠拢,再从头开始进行一至三报数,凡报 ...
- 【HDU - 1276】士兵队列训练问题 (报数问题 模拟)
题干: 某部队进行新兵队列训练,将新兵从一开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始一至二报数,凡报到二的出列,剩下的向小序号方向靠拢,再从头开始进行一至三报数,凡报到三的出列,剩下 ...
- 士兵队列训练问题 HDU - 1276
题目 士兵队列训练问题 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Tota ...
最新文章
- 如何修改Linux主机名
- pyqt 多线程使用
- 【Matlab】找到矩阵中每个连通域的最小值
- php简单环境,PHP 简单的环境搭建
- java跨库调用存储_存储库仅在第二个调用数据时发送回ViewModel
- 所有的iPhone设备cell的宽度都是320,解决办法是?
- Python_模块Module
- 神秘TTY:The TTY demystified
- APUE学习笔记:第五章 标准I/O库
- 计算机网络的商业价值和应用,计算机网络建模数学工具的分析与比较
- yoloV3运行速度测试报告
- python 动画场景_clarisse电影级CG场景渲染中文教学
- Charles--使用Charles抓Https包
- Pr入门学习之选择GPU加速
- silverlight java通信_Silverlight使用JavaSocket连接jabber服务器
- 按键精灵使用乐玩插件
- 12306的架构部署
- 鄭光弼 守夫 當坐吾座
- python json文件对比方法
- 翻译: Transformer一种用于语言理解的新型神经网络架构 Google AI