做电脑网站,凡科互动游戏作弊软件,的的平台服务电话,wordpress返回按钮csp信奥赛C标准模板库STL案例应用14 queue实践
题目描述 nnn 个人围成一圈#xff0c;从第一个人开始报数,数到 mmm 的人出列#xff0c;再由下一个人重新从 111 开始报数#xff0c;数到 mmm 的人再出圈#xff0c;依次类推#xff0c;直到所有的人都出圈#xff0c;请…csp信奥赛C标准模板库STL案例应用14queue实践题目描述n nn个人围成一圈从第一个人开始报数,数到m mm的人出列再由下一个人重新从1 11开始报数数到m mm的人再出圈依次类推直到所有的人都出圈请输出依次出圈人的编号。输入格式输入两个整数n , m n,mn,m。输出格式输出一行n nn个整数按顺序输出每个出圈人的编号。输入输出样例 1输入 110 3输出 13 6 9 2 7 1 8 5 10 4说明/提示1 ≤ m , n ≤ 100 1 \le m, n \le 1001≤m,n≤100思路分析这是一个经典的约瑟夫环问题。代码使用队列这种数据结构来模拟整个过程初始状态n个人围成一圈编号1~n报数规则从第一个人开始报数数到m的人出圈循环过程出圈后从下一个人继续从1开始报数结束条件所有人都出圈代码实现#includebits/stdc.husingnamespacestd;intn,m;// 总人数n报数上限mqueueintq;// 使用队列模拟约瑟夫环intmain(){// 输入数据cinnm;// 初始化队列将1~n的编号顺序入队// 此时队列中的顺序就是初始的环状顺序for(inti1;in;i){q.push(i);}// 模拟出圈过程while(!q.empty()){// 关键步骤将前m-1个人从队首移到队尾// 这模拟了报数过程这些人报数不是m所以不出圈for(inti1;im-1;i){q.push(q.front());// 队首元素加入队尾相当于回到圈中继续报数q.pop();// 移除原队首元素}// 当前队首即为报数到m的人// 因为前m-1个人已经移到队尾现在队首是第m个人coutq.front() ;// 输出出圈编号q.pop();// 移除已出圈的人此人离开队列}return0;}功能分析1. 核心数据结构队列队列的特性先进先出FIFO模拟环状结构通过出队再入队的方式模拟了人围成一圈的效果队首代表当前报数的人始终从队首开始报数2. 算法流程初始化1 2 3 ... n 入队 循环直到队列为空 1. 将前m-1个人移到队尾报数过程 2. 队首的人出队并输出出圈3. 示例演示n5, m3初始队列[1,2,3,4,5] 第1轮1,2移到队尾 → [3,4,5,1,2] → 3出圈 第2轮4,5移到队尾 → [1,2,4,5] → 1出圈 第3轮2,4移到队尾 → [5,2,4] → 5出圈 第4轮2,4移到队尾 → [2,4] → 2出圈 第5轮4出圈 输出3 1 5 2 44. 算法特点时间复杂度O(n×m)因为每个人出圈需要移动m-1次空间复杂度O(n)队列存储n个元素优点直观易懂代码简洁适用性适用于n和m较小的情况本题限制为≤100各种学习资料助力大家一站式学习和提升#includebits/stdc.husingnamespacestd;intmain(){cout########## 一站式掌握信奥赛知识! ##########;cout############# 冲刺信奥赛拿奖! #############;cout###### 课程购买后永久学习不受限制! ######;return0;}一、CSP信奥赛C通关学习视频课C语法基础C语法进阶C算法C数据结构CSP信奥赛数学CSP信奥赛STL二、CSP信奥赛C竞赛拿奖视频课信奥赛csp-j初赛高频考点解析CSP信奥赛C复赛集训课12大高频考点专题集训三、考级、竞赛刷题题单及题解GESP C考级真题题解CSP信奥赛C初赛及复赛高频考点真题解析CSP信奥赛C一等奖通关刷题题单及题解详细内容1、csp/信奥赛C完整信奥赛系列课程永久学习https://edu.csdn.net/lecturer/7901 点击跳转2、CSP信奥赛C竞赛拿奖视频课https://edu.csdn.net/course/detail/40437 点击跳转3、csp信奥赛冲刺一等奖有效刷题题解CSP信奥赛C初赛及复赛高频考点真题解析持续更新https://blog.csdn.net/weixin_66461496/category_12808781.html 点击跳转2025 csp-j 复赛真题及答案解析最新更新2025 csp-x(山东) 复赛真题及答案解析最新更新2025 csp-x(河南) 复赛真题及答案解析最新更新2025 csp-x(辽宁) 复赛真题及答案解析最新更新2025 csp-x(江西) 复赛真题及答案解析最新更新2025 csp-x(广西) 复赛真题及答案解析最新更新2020 ~ 2024 csp 复赛真题题单及题解2019 ~ 2022 csp-j 初赛高频考点真题分类解析2021 ~ 2024 csp-s 初赛高频考点解析2023 ~ 2024 csp-x (山东)初赛真题及答案解析2024 csp-j 初赛真题及答案解析2025 csp-j 初赛真题及答案解析最新更新2025 csp-s 初赛真题及答案解析最新更新2025 csp-x (山东)初赛真题及答案解析(最新更新)2025 csp-x (江西)初赛真题及答案解析(最新更新)2025 csp-x (辽宁)初赛真题及答案解析(最新更新)CSP信奥赛C一等奖通关刷题题单及题解持续更新https://blog.csdn.net/weixin_66461496/category_12673810.html 点击跳转129 道刷题练习和详细题解涉及模拟算法、数学思维、二分算法、 前缀和、差分、深搜、广搜、DP专题、 树和图4、GESP C考级真题题解GESP(C 一级二级三级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12858102.html 点击跳转GESP(C 四级五级六级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12869848.html 点击跳转· 文末祝福 ·#includebits/stdc.husingnamespacestd;intmain(){cout跟着王老师一起学习信奥赛C;cout 成就更好的自己 ;cout csp信奥赛一等奖属于你! ;return0;}