洛谷P1996 约瑟夫问题【队列】_8个人站成一圈,从第1个人开始报数,报到5的人出圈,第6个人再从1开始报。依次类-程序员宅基地

技术标签: 洛谷  水题  栈 队列  

题目背景

约瑟夫是一个无聊的人!!!

题目描述

n个人(n<=100)围成一圈,从第一个人开始报数,数到m的人出列,再由下一个人重新从1开始报数,数到m的人再出圈,……依次类推,直到所有的人都出圈,请输出依次出圈人的编号.

输入输出格式

输入格式:

 

n m

 

输出格式:

 

出圈的编号

 

输入输出样例

输入样例#1: 复制

10 3

输出样例#1: 复制

3 6 9 2 7 1 8 5 10 4

说明

m, n \le 100m,n≤100

思路:题目数据比较小,所以算是一道比较水的题了,就用了队列来写,主要是每次判断队列头位置的元素,将头元素插入到尾端再将头元素删除。如果叠加到了就删除,这样就构成了队列的循环。

#include<cstdio>
#include<queue>
#include <iostream>
using namespace std;
int main()
{
    int n,m,c=1;
    scanf("%d%d",&n,&m);
    queue<int> q;
    for(int i=1;i<=n;++i)
        q.push(i);
    while(!q.empty())
    {
        if(c==m)
        {
            printf("%d ",q.front());
            q.pop();
            c=1;
        }
        else
        {
            ++c;
            q.push(q.front());
            q.pop();
        }
    }
    printf("\n");
    return 0;
}

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_41785863/article/details/83065781

智能推荐

PyCharm无法索引cannot find declaration to go to||CTRL+也不起作用(已解决)-程序员宅基地

文章浏览阅读9.9k次,点赞4次,收藏2次。如题所述,见下图问题解决很简单:方案一:file–&amp;gt;close project然后重新导入方案二:file–&amp;gt;settings–&amp;gt;project—&amp;gt;project interpreter绑定解释器方案三:真的是代码写错了,重新写一下,上级目录要带上...2018-12-14 22:15:18写于滨州市博兴县..._pycharm无法索引

十、卷积神经网络知识和二维卷积层计算(3.7学习笔记)_二维卷积后的参数怎么计算-程序员宅基地

文章浏览阅读519次。进入卷积神经网络学习_二维卷积后的参数怎么计算

如何修改Tomcat服务器Server Locations-程序员宅基地

文章浏览阅读1.4k次。首先双击我们集成好的Tomcat服务器 ,进入修改页面,修改Server Locations选项 , 会发现 Server Locations 灰色不可选,如果需要更改设置,则需要移除与Tomcat服务器关联的项目,同时,鼠标右键菜单Clean清除Tomcat服务器的状态,就可..._server locations

腾讯地图小程序服务器配置,腾讯地图实现微信小程序地图定位教程-程序员宅基地

文章浏览阅读1.4k次。前言目前腾讯位置服务提供路线规划、地图选点、地铁图、城市选择器插件四款插件产品,本篇博客主要针对地图选点功能进行实现。开通腾讯位置服务2、登录进入小程序后台,选择 “开发 - 开发工具 - 腾讯位置服务”image.png3、点击 “开通”,进入授权扫码界面image.png4、使用微信扫码进行授权image.png5、绑定开发者账号image.png接入插件1、在小程序后台,选择 “设置 - 第..._微信小程序地图搜索周边腾讯怎么设置

Python爬虫之入门保姆级教程,学不会我去你家刷厕所_python爬虫教程-程序员宅基地

文章浏览阅读7.4w次,点赞477次,收藏3.3k次。注重版权,转载请注明原作者和原文链接作者:Bald programmer今天这个教程采用最简单的爬虫方法,适合小白新手入门,代码不复杂爬虫的介绍以及原理等等七七八八的东西我就不多bb了,咋们直接上教程本案例我就以 彼岸图网 这个网站做教程,原网址下方链接https://pic.netbian.com/首先打开咋们的网站可以看到有很多好看的图片,一页总共21张图片我们右键选择检查或者直接按F12来到控制台点击左上角的箭头或者快捷键ctrl+shift+c,然后随便点在一张图片上面.._python爬虫教程

c语言课设报告时钟vc环境,C语言模拟时钟转动课设报告-附代码(17页)-原创力文档...-程序员宅基地

文章浏览阅读210次。模拟时针转动程序姓名:学号:完成日期:2012年12月设计目的加深对讲授内容的理解,尤其是一些语法规定。通过课程设计,自然地、熟练地掌握。熟悉所用的计算机系统的操作方法,也就是熟悉语言程序开发的环境。学会上机调试程序。熟悉C语言图形模式下的编程,掌握利用C语言相关函数开发电子时钟的基本原理。能模拟机械钟表行走;要准确地利用数字显示时间;在屏幕上显示一个活动时钟;程序界面设计合理,色彩得体大方,显示..._vc++时钟课程设计

随便推点

PIC16LC66-04I/SO 8位微控制器 -MCU 中文资料PDF参数-程序员宅基地

文章浏览阅读370次,点赞9次,收藏5次。工厂Lead Time:通常为4周 PIC16LC66-04I/SO是一种低功耗、高性能的8位CMOS微控制器,适用于各种嵌入式应用。PIC16LC66-04I/SO可以通过Microchip的MPLAB X IDE进行编程和调试。在使用该微控制器时,请务必查看其数据手册和参考手册,以了解其引脚定义、功能、应用电路图、电压和使用方法等详细信息。产品类型:8-bit Microcontrollers - MCU。器件名称:PIC16LC66-04I/SO。输入/输出端数量:22 I/O。

以太坊中私钥、公钥、账户地址详解_eth私钥地址分享-程序员宅基地

文章浏览阅读1.6w次,点赞2次,收藏14次。在学习以太坊的过程中,有些描述告诉我:公钥和账户地址有关系。一个以太坊地址就代表着一个以太坊账户,地址是账户的标识。对于外部账户来说,地址表示的是该账户公钥的后20字节(通常会以0x开头,例如,0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826,该地址使用的是16进制表示法2)。自己的疑问:那私钥呢?就是我们创建账户时,输入的密码吗?这也太简单了吧?..._eth私钥地址分享

基于springboot+vue.js的图书管理系统附带文章和源代码设计说明文档ppt-程序员宅基地

文章浏览阅读817次,点赞18次,收藏18次。博主介绍:CSDN特邀作者、985计算机专业毕业、某互联网大厂高级全栈开发程序员、码云/掘金/华为云/阿里云/InfoQ/StackOverflow/github等平台优质作者、专注于Java、小程序、前端、python等技术领域和毕业项目实战,以及程序定制化开发、全栈讲解、就业辅导、面试辅导、简历修改。精彩专栏 推荐订阅2023-2024年最值得选的微信小程序毕业设计选题大全:100个热门选题推荐2023-2024年最值得选的Java毕业设计选题大全:500个热门选题推荐。

POJ 2828-程序员宅基地

文章浏览阅读389次。POJ 2828 (单点修改 区间查询)题目链接:POJ 2828题意:n个人,每个人不断地插入到队伍中。输入a b表示号码为b的插入到第a个后面。分析:需要逆序处理插入队伍的信息。每个区间记录着每个区间能存放的人的数量。逆序插入时,若左子树还能放人,则放到左子树那,否则放到右子树那。当前区间减1,并且将val的值放入到最终的答案中。逆序处理的原因:如下面的

【matlab调用stk】环境配置_matlab控制stk12.2-程序员宅基地

文章浏览阅读431次,点赞11次,收藏6次。stk按照安装向导步骤,勾选的时候如果不知道选哪个就全部勾选,与互联相关的两个选项一定要选。测试是否能够调用成功。_matlab控制stk12.2

用python代码实现ChatGPT平台和剪映/百度AIGC平台制作短视频的自动化的讨论_剪映python接口-程序员宅基地

文章浏览阅读1.9k次。【代码】用python代码实现ChatGPT平台和剪映/百度AIGC平台制作短视频的自动化的讨论。_剪映python接口

推荐文章

热门文章

相关标签