我不喜欢打针
【问题描述】
小朋友们排成一列纵队,从第一个人开始依次编号为 1~n。当队伍中至少还剩两个人时,出现了“逃跑行为" : 当第一个人进入医务室打针时,队伍中新的第一个人逃到了队伍的最后。请输入n ,并输出正确的打针顺序( 3≤n≤100 ) 。
【样例输入】
5
【样例输出】
1 3 5 4 2
#include<iostream> using namespace std; int que[100],front=0,rear=0; int push(int x){ que[rear]=x; int rs=que[rear]; rear++; return rs; } int pop(){ if(rear!=front){ return que[front++]; } } int quelen(){ return rear-front; } bool empty(){ return rear==front; } int main(){ int n; cin>>n; for(int i=1; i<=n; i++) { // 入队。 push(i); } while(!empty()){ cout<<pop()<<" "; if(quelen()>=2) push(pop()); } return 0; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现