hdu 1276 士兵队列训练问题
士兵队列训练问题
HDU - 1276
Input
本题有多个测试数据组,第一行为组数N,接着为N行新兵人数,新兵人数不超过5000。
Output
共有N行,分别对应输入的新兵人数,每行输出剩下的新兵最初的编号,编号之间有一个空格。
Sample Input
2 20 40
Sample Output
1 7 19 1 19 37
思路:n<=3特判直接输出;n>3直接取奇数标号的士兵,vis[i]标记 标号为( i*2-1 )的士兵 是否被去掉,n记录剩余人数
当n<=3时结束循环,输出(注意:最后一个标号后没有空格)
#include <stdio.h>
#include <string.h>
int vis[2505];//直接取奇数 int main()
{int t;scanf("%d",&t);while(t--){memset(vis,0,sizeof(vis));int n;scanf("%d",&n);if(n<=3)//n<=3一定要特判 {if(n==1)printf("1\n");else if(n==2)printf("1 2\n");else if(n==3)printf("1 2 3\n");continue;}if(n%2==1)//直接取奇数标号的士兵 n++;int t=n/2;n=n/2; while(n>3)//n为剩余人数 {int tt=0;for(int i=1;i<=t;i++)//去掉报数为3的士兵 {if(!vis[i]){tt++;if(tt==3){vis[i]=1;n--;tt=0;}}}if(n<=3)break;tt=0;for(int i=1;i<=t;i++)//去掉报数为2的士兵 {if(!vis[i]){tt++;if(tt==2){n--;vis[i]=1;tt=0;}}} }int i;for(i=1;i<=t;i++)if(!vis[i]){n--;if(n!=0)printf("%d ",2*i-1);elsebreak; }printf("%d\n",2*i-1);}return 0;
}
hdu 1276 士兵队列训练问题相关推荐
- 解题报告:hdu 1276 士兵队列训练问题 - 简单题
Problem Description 某部队进行新兵队列训练,将新兵从一开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始一至二报数,凡报到二的出列,剩下的向小序号方向靠拢,再从头开始进行 ...
- hdu 1276 士兵队列训练问题 (详解)
题目 某部队进行新兵队列训练,将新兵从一开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始一至二报数,凡报到二的出列,剩下的向小序号方向靠拢,再从头开始进行一至三报数,凡报到三的出列,剩下的 ...
- HDU - 1276 士兵队列训练问题
Description 某部队进行新兵队列训练,将新兵从一开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始一至二报数,凡报到二的出列,剩下的向小序号方向靠拢,再从头开始进行一至三报数,凡报 ...
- hdoj 1276 士兵队列训练问题 模拟队列
士兵队列训练问题 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total S ...
- 1276 士兵队列训练问题【队列模拟】
士兵队列训练问题 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total S ...
- c++ HDU 1279 士兵队列训练问题
题目描述: 某部队进行新兵队列训练,将新兵从一开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始一至二报数,凡报到二的出列,剩下的向小序号方向靠拢,再从头开始进行一至三报数,凡报到三的出列, ...
- HOJ 1276 士兵队列训练问题(stl, 水题)
stl, 水题 本题要点: 1.用 list 模拟即可. 2.题目可能的歧义的地方: 有两种选法, 选法1:每2个出列一个, 选法2:每3个出列一个. 结束条件,每完成一种选法后,如果剩下的数 < ...
- 士兵队列训练问题 HDU - 1276
题目 士兵队列训练问题 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Tota ...
- 士兵队列训练问题 (HDU - 1276)
士兵队列训练问题 题目 题目 某部队进行新兵队列训练,将新兵从一开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始一至二报数,凡报到二的出列,剩下的向小序号方向靠拢,再从头开始进行一至三报数 ...
最新文章
- UICollectionView入门--使用系统UICollectionViewFlowLayout布局类
- 训练AI来检测人类意图,扩大制造领域的人机协作
- 英学者研究60亿次通话记录发现:好友再多也没用,最好朋友就4个
- 如何编写企业解决方案书(转)
- 分布式理论(一)CAP 理论
- “智云大咖秀”:大咖摄影师谈惊艳亮相的“大咖级”设备
- 离线语法设置 科大讯飞_科大讯飞智能键盘K710评测 输入速度超级加倍
- Fast dev didn't succeed, trying another location
- docker hive nagasuga_制作一个用来调试hive的docker镜像
- 蓝桥杯 ADV-169 算法提高 士兵排队问题
- php手册chm打开空白
- html文字发亮_css实现发光文字及一点点js特效
- 【翻译】Bing-CF-IDF+:语义驱动的新闻推荐系统
- python绘图 -- 小猪佩奇源码分享
- 结合Java和机器学习技术,如何驾驭大数据提升业务效率和竞争力?
- 爱码物联SaaS|一物一码技术如何助力线下流量营销?
- 【深度学习】(ICCV-2021)PVT-金字塔 Vision Transformer及PVT_V2
- css3宽度变大动画_H5 直播的疯狂点赞动画是如何实现的?
- python程序基础题库_智慧职教APPPython程序设计基础题库及答案
- Linux 服务器安装部署Jena
热门文章
- CCF2020问答匹配比赛:如何只用“bert”夺冠
- 良心安利艺术音乐word模板素材网站
- 怎么更改计算机开机声音,电脑开机声音,详细教您电脑开机声音怎么更改
- 如何系统的自学网络安全
- http无状态还是web应用无状态
- win10固定到开始屏幕图标不显示
- Flutter采坑实录
- 粒子群算法python_python实现粒子群算法
- java 网上书店设计与实现_(JAVA)网上书店的设计与实现
- 关于网站资源“下载”“离线”的问题 ,各位长点心吧