用链表实现约瑟夫环

Description
你听说过约瑟夫问题吗?问题大致如下:首先n个人围成一个圈,标记为1到n号。接着,从1号开始报数(从1开始),然后2号报数,然后3号。。。当有人报到到m时,这个人就要踢出比赛,然后从被踢出的人的下一个人开始,重新报数(从1开始)。这样经过n-1次后,就只剩下了一个人,问最后剩下的那个人是几号?
Input
第1行为T,表示有T组数据;第2行到第T+1开始,每行输入n和m,n表示有几个人,m为上述的每报数m次就要踢出一个人1=<n<=100, 1=<m<=100
Output
一个数,表示最后剩下了几号
Sample Input
2
5 3
6 4
Sample Output
4
5
没用链表

#include<stdio.h>
int main()
{int T,n,m,a[102],t;scanf("%d",&T);while(T--){scanf("%d%d",&n,&m);for(int i=1;i<=n;i++)a[i]=i;t=0;while(n>1){t+=m-1;t%=n;for(int i=t+1;i<=n;i++)a[i]=a[i+1];n--; }printf("%d\n",a[1]);}
}

用链表实现约瑟夫环(没用)相关推荐

  1. 单链表实现约瑟夫环问题

    经典的约瑟夫环问题,用单链表实现竟然这么简单!? 目录 前言 问题 思路 代码 前言 这两天想到了之前自己用数组实现约瑟夫环问题时写了好多的代码,然后想到数据结构中的但链表好像也可以实现,于是去实践了 ...

  2. java 单链表约瑟夫环_java循环单链表实现约瑟夫环问题

    package SingleLinkList; //节点类 class Node{ private int data; private Node next; public int getData() ...

  3. 约瑟夫问题C语言加注释,用链表实现约瑟夫环【有注释,有很多注释】

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 主要问题在于删除约瑟夫环的数,结果一直出不来,看了好几天改了好几次都改不对 #include #include typedef struct ysf { ...

  4. 【Java】单循环链表解决约瑟夫环问题

    问题描述 据说著名犹太历史学家 Josephus有过以下的故事:在罗马人占领乔塔帕特后,39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人抓到,于是决定了一个自 ...

  5. 【算法-剑指 Offer】62. 圆圈中最后剩下的数字(环形链表;约瑟夫环;动态规划)

    剑指 Offer 62. 圆圈中最后剩下的数字 - 力扣(LeetCode) 发布:2021年9月12日12:18:52 问题描述及示例 0,1,···,n-1这n个数字排成一个圆圈,从数字0开始,每 ...

  6. c语言循环单链表实现约瑟夫环问题

    题目: 约瑟夫(Joeph)问题的一种描述是:编号为1,2,-,n的n个人按顺时针方向围坐一圈,每人持有一个密码(正整数).一开始任选一个正整数作为报数上限值max,从第一个人开始按顺时针方向自1开始 ...

  7. java实现环形链表解决约瑟夫环问题

    什么是环形链表? 环形链表就是单向链表的基础上让链表的首尾相连,形成一个环,这就是一个循环链表. 什么是约瑟夫环问题? 约瑟夫环如下: 约瑟夫问题是个著名的问题:N个人围成一圈,第一个人从1开始报数, ...

  8. 单链表实现约瑟夫环(JosephCircle)(C语言)

    //使链表形成一个环 void FormCyc(PSListNode *pHead) {if (NULL == pHead){return;}else{PSListNode pNode = *pHea ...

  9. 分别用 数组和链表处理约瑟夫环问题

    #include <stdio.h> #include <stdlib.h>   int main()  {       int k=0,n=0,s=0,m=0;        ...

最新文章

  1. 关键字 base 的作用
  2. 禁用任何未使用的端口com_[pc玩家]如何在Windows 10中禁用USB端口
  3. 性能媲美BERT却只有其1/10参数量? | 近期最火模型ELECTRA解析
  4. ansole终端链接linux,基于Linux系统的智能家居远程控制系统设计论文.doc
  5. ios中的视频采集及参数设置和相机操作
  6. 我对CSS选择器的认识
  7. mysql主从复制的binlog和relay-log的区别
  8. CentOS 6.5 生产环境编译安装LNMP
  9. Python批量运行Gprmax仿真并快速提取雷达波走时和振幅
  10. Illustrator教程,如何在 Illustrator 中创建和应用图案?
  11. Php与Mysql关系揭秘
  12. mysql with rollup_MySQL-with rollup函数运用 _20160930
  13. mysql双机备份软件_MySql双机热备份
  14. linux压缩文件方式,在 Linux 上压缩文件的 5 种方法
  15. 微信发红包测试用例设计
  16. 人工智能原理笔记------知识表示方法
  17. 狂野飙车4java游戏音乐_狂野飙车8赛车背景音乐名称大全
  18. 开源的IoT物联网平台大比拼
  19. java基础编程题及答案,三面蚂蚁金服(交叉面)定级阿里P6
  20. LinkedList集合基本操作(代码+注释)

热门文章

  1. 北大OJ(POJ 2795)金银岛
  2. html抓取成xml,使用XML包将html表抓取到R数据帧中
  3. java怎样将多个list写入txt中并且不覆盖原有数据_java容器,面试必备知识点整理!...
  4. PingCAP联合创始人兼CTO黄东旭:致力于打造全球最好的分布式数据库
  5. 直播预告 | 乘云而上:云原生数据仓库AnalyticDB
  6. Oracle 11g 频繁遭遇 CheckPoint incomplete问题分析(直播预告)
  7. PingCAP创始人刘奇:TiDB设计理念进化与大规模实践
  8. MySQL数据技术嘉年华,带你深入MySQL的世界
  9. 一文了解MySQL的Buffer Pool
  10. 数仓业务容错利器:物理细粒度备份恢复技术