问题描述

n个人围成一圈,顺序编号。从第一个人开始从1到m报数,凡报到m的人退出圈子,编程求解最后留下的人的初始编号。
样例输入:(第一行输入)
6 3(两个输入数据之间有空格)
样例输出:(换行输出)
1

#include<stdio.h>
#include<stdlib.h>
#define max 100
int loop[max+10];
int main(){           int n,m,i;scanf("%d%d",&n,&m);for(i=0;i<n;i++)loop[i]=i+1;int dest=0;for(i=0;i<n;i++){             int count=0;while(count<m){             while(loop[dest]==0)dest=(dest+1)%n;count++;dest=(dest+1)%n;}dest--;if(dest<0)dest=n-1;if(i==n-1)printf("%d\n",loop[dest]);loop[dest]=0;}return 0;}

n个人围成一圈,顺序编号。从第一个人开始从1到m报数,凡报到m的人退出圈子,编程求解最后留下的人的初始编号。相关推荐

  1. C语言用数组1. 简单约瑟夫环问题: N个人,编号从1~N围成一圈,输入一个数T,从1号开始报数,报到T的人出圈;下一人又从1开始报数,下一个报到T的人出圈,输出出圈顺序。 考虑问实现约瑟夫环问题

    1. 简单约瑟夫环问题: N个人,编号从1~N围成一圈,输入一个数T,从1号开始报数,报到T的人出圈:下一人又从1开始报数,下一个报到T的人出圈,输出出圈顺序. 考虑问题: 报到T的人出圈,怎么表示出 ...

  2. 有n个人围成一圈,顺序排号,从第一个人开始报数(1-3报数),凡是报数为3的人退出圈子,问最后留下的人原来的编号是多少?

    有n个人围成一圈,顺序排号,从第一个人开始报数(1-3报数),凡是报数为3的人退出圈子,问最后留下的人原来的编号是多少? 花了半个下午搞出来的代码,调试了一会,一切正常,感觉还不错! '''解题思路: ...

  3. 习题 6.5 有n个人围成一圈,顺序排号。从第1个人开始报数(从1~3报数),凡报到3的人退出圈子,问最后留下的人原来排在第几号。

    C++程序设计(第三版) 谭浩强 习题6.5 个人设计 习题 6.5 有n个人围成一圈,顺序排号.从第1个人开始报数(从1~3报数),凡报到3的人退出圈子,问最后留下的人原来排在第几号. 代码块: # ...

  4. (C++)有n个人围成一圈,顺序排号。从第一个人开始报数(1~3报数),凡报到3的人退出圈子,问最后留下的人原来排在第几号。

    (C++)有n个人围成一圈,顺序排号.从第一个人开始报数(1~3报数),凡报到3的人退出圈子,问最后留下的人原来排在第几号. #include<iostream> #include< ...

  5. 1056: 约瑟夫问题【n人围成一圈,报数为3的人退出圈子,问最后留下的人原来的编号。】

    Description 有n人围成一圈,顺序排号.从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来的第几号的那位. Input 初始人数n Output 最后一人的初始编号 ...

  6. C语言>>有n个人围成一圈,顺序排号,从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的人原来排在第几号。

    使用工具: Dev-C++ 5.11 解题思路: 比如有4个人报数,报到3的人会退出圈子,那第四个人就应该报1,第一个人报2,依此类推.题中提到的退出圈子,在代码中并不是真正的退出member[100 ...

  7. cqupt题库 n个人围成一圈,顺序编号。从第一个人开始从1到m报数,凡报到m的人退出圈子,编程求解最后留下的人的初始编号。 程序运行示例: 6 3(两个输入数据之间有空格) 1

    n个人围成一圈,顺序编号.从第一个人开始从1到m报数,凡报到m的人退出圈子,编程求解最后留下的人的初始编号. 程序运行示例: 6 3(两个输入数据之间有空格) 1 输入格式:scanf("% ...

  8. (C语言)有n人围成一圈,顺序排号。从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来的第几号的那位。

    题目描述 有n人围成一圈,顺序排号.从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来的第几号的那位. 输入 初始人数n 输出 最后一人的初始编号 样例输入 3 样例输出 2 ...

  9. 有n人围成一圈,顺序排号。从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来的第几号的那位。

    题目描述 有n人围成一圈,顺序排号.从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来的第几号的那位. 输入 初始人数为n. 输出 最后一个人的初始编号. 样例输入 3 样例 ...

  10. 题目:运用指针知识,有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的那位是原来的第几号?

    题目:运用指针知识,有n个人围成一圈,顺序排号.从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的那位是原来的第几号? 一.需求分析 求出从未报到3的人的编号 二.思维节点 1.如 ...

最新文章

  1. win10装linux分区格式化硬盘,windows10 下硬盘安装centos7.0 – MBR硬盘分区格式
  2. linux下查询端口,进程的状态以及netstat的参数意义
  3. java和python的比较-Python和Java就业前景对比
  4. html 入门例子(一)
  5. nodejs html引用js_NodeJS与模块系统
  6. MySQL获取Schema表名和字段信息
  7. 结构体里有指针 scanf赋值_C++|链表中常见的链表节点指针操作
  8. 河北职称计算机Excel一,2012年河北省职称计算机Excel操作练习一.doc
  9. 114_Power Pivot 销售订单之销售额、成本、利润率相关
  10. ASP.NET MVC中,通用的异常处理
  11. 「镁客·请讲」HelloEOS梓岑:嘻哈外表下的区块链式达尔文主义
  12. Exception.ToString()使用及其他方法比较
  13. php 生成小程序码
  14. Mac安装/卸载brew
  15. Linux可以打开cdr文件吗,CDR是什么格式
  16. 等待是一个过程,每一种坚守都是幸福
  17. Gopher Daily (2020.05.02) ʕ◔ϖ◔ʔ
  18. 下载在线阅览的pdf文件
  19. Linux framebuffer双缓冲防止闪烁
  20. 【034】翼辉信息获得“核高基”重大专项支持

热门文章

  1. Matlab并行编程
  2. 基于Android手机近距离感应器的俯卧撑计数器
  3. 六 Python 字典与集合
  4. 计算机硬件输出设备有哪些,输出设备有哪些,输出设备的作用
  5. 蒙特卡洛方法(Monte-Carlo Simulation)
  6. Monte Carlo算法
  7. matlab常数模块,simulink怎样输入常数
  8. 使用代理ip会导致网络卡顿吗?
  9. teemo使用手册(内附脚本一键提取,邮箱、IP、domain、whatweb筛选可打开网址)
  10. 模电 2个NPN管组成的恒流源电路分析