1001: 约瑟夫问题-输出最后的编号
Time Limit: 1 Sec Memory Limit: 128 MB 64bit IO Format: %lld
Submitted: 17 Accepted: 16
[Submit][Status][Web Board]
Description
n个人围成一圈,依次从1至n编号。从编号为1的人开始1至k报数,凡报数为k的人退出圈子,输出最后留下的一个人原来的编号。

Input
首先输入一个t,表示有t组数据(1<= t <= 10010)

然后有t行,每行有2个正整数n和k。(1<= n,k<= 20)

Output
对于每组测试数据,输出一个数,表示最后留下来的人的编号。

Sample Input
3
10 3
7 1
5 4

Sample Output
4
7
1

HINT
例如第三组样例:5个人围成一圈,编号1-5。第一轮报数4号出列,第二轮从5开始报数1,3报4,3出列,第三轮从5开始报1,5报4,5出列,第四轮1开始报1,2报4,2出列,最后剩下的为1号。

#include <iostream>
#include <queue>
#include<stdio.h>
#include<string.h>
#include<stack>
#include<map>
#include<climits>
#include<algorithm>
using namespace std;int main()
{int a[22]={0};int n,m,k;ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);//不用管while(cin>>m){while(m--){cin>>n>>k;for(int i=1;i<=n;i++)a[i]=1;//代表他们都还没有被赶走int j=1;int i=0;int sum=0;while(i<k){i+=a[j];//这样子被赶走的人的报数不算到里面if(i==k){a[j]=0;//代表那个人被赶走了i=0;sum++;if(sum==n)//当赶走的人数和人的总数一样循环结束break;}j++;if(j==n+1)j=1;//当到n号的人的时候,下一个为n+1}printf("%d\n",j);}}
}

约瑟夫问题-输出最后的编号相关推荐

  1. 实验题目:约瑟夫环问题:设编号为1,2,3,……,n的n(n>0)个人按顺时针方向围坐一圈,m为任意一个正整数。从第一个人开始顺时针方向自1起顺序报数,报到m时停止并且报m的人出列,再从他的下一个人

    实验题目:约瑟夫环问题:设编号为1,2,3,--,n的n(n>0)个人按顺时针方向围坐一圈,m为任意一个正整数.从第一个人开始顺时针方向自1起顺序报数,报到m时停止并且报m的人出列,再从他的下一 ...

  2. Python入门:格式化输出商品的编号和单价

    '''输入销售数据:商品号,商品名,单价1.商品号六位输出2.单价保留两位小数点,前面添加¥''' # 格式化输出商品的编号和单价id = 0 result = "" while ...

  3. poj 2182 给你每个数前面有几个数比他小让你输出次数的编号

    POJ 2182 Lost Cows(树状数组,暴力解法) 2014年03月20日 02:00:55 阅读数:1938 标签: ACM 更多 个人分类: 数据结构--树状数组ACM--题解汇总★★AC ...

  4. 【C语言程序】体育老师按照学生身高编号,老师刚好排好编号,一位中等个子的男孩临时加入排列,因此老师将他排在第8号位置并重新排序他后面同学的编号。输出学生的编号。

    题出自--------------------------零基础学C语言 #include<stdio.h> int main() {int i;int a[10] = { 1,2,3,4 ...

  5. java中输出打印 num_System.out.print。 如何将打印输出编号?(JAVA)

    因此,假设我打印出500名员工的巨大记录. 在打印出记录后,我希望它看起来像: 1. Matthew J. $USD 28.404 2. Donna M. $USD 43.254 3. Jordan ...

  6. 约瑟夫环之循环链表实现

    约瑟夫环是一个数学的应用问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围.从编号为k的人开始报数,数到m的那个人出列:他的下一个人又从1开 始报数,数到m的那个人又出列:依此规律 ...

  7. Java_案例实例2.约瑟夫环问题

    约瑟夫环问题描述: 编号为1-N的N个人按顺时针方向围坐成一圈,从第S个人开始报数(从1报起),报数为M的人出圈,再从他的顺时针方向的下一个人重新开始报数,如此下去,直至所有人出圈为止,给出N个人的出 ...

  8. [1197]约瑟夫问题 (循环链表)SDUT

    约瑟夫问题 Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描述 n个人想玩残酷的死亡游戏,游戏规则如下: n个人进行编号,分别从1到n ...

  9. 约瑟夫问题-sdut

    约瑟夫问题 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description n个人想玩残酷的死亡游戏,游戏规 ...

最新文章

  1. RAC环境下的备份与恢复(一)
  2. 【Java】 剑指offer(40) 最小的k个数
  3. java中public_java中public class与class的区别详解
  4. 好强大的仿生机械,这才是真正的黑科技!
  5. php time java_java 时间戳和PHP时间戳 的转换 php time()
  6. MTK驱动(75)--- MT6739平台的thermal高温充电机制调整
  7. VISTA中注册表项LEGACY_****的删除--另一种方法:使用psExec
  8. Java单元测试框架 - JUnit
  9. IAR教程之IAR下载和调试
  10. win7一点计算机就卡死,win7系统电脑经常卡住假死页面关不掉的解决方法
  11. C语言递归解兔子繁衍问题
  12. 51单片机ADDA数模转换
  13. Web端与移动端接入萤石云平台的视频数据
  14. 采用JDBC解释java SPI机制和线程上下文类加载器 —————— 开开开山怪
  15. 控制测量步骤及其内业计算
  16. 全球500强企业里用的两字母域名!
  17. 网站去除plugin.php小尾巴,dedecms去除首页index.html小尾巴,这种方法是错误的!
  18. 网卡和网卡的驱动程序
  19. 读书虽苦,却是最容易的那条!
  20. ie经常卡死是什么原因_IE6必须死的6个原因

热门文章

  1. 2018年算法工程师秋招经验贴(微软、华为、网易游戏、阿里offer)
  2. 手机CMWAP上网设置(完全版)
  3. 【python】Algorithm
  4. 线性代数 05.07 用合同变换法化二次型为标准形
  5. 苹果应用分身_你喜欢用苹果手机拍照!不学会这4个功能,怪不得拍不出好照片...
  6. 普通壳的脱壳方法和脱壳技巧
  7. 深入了解计算机系统——实验二(Data Lab)(详解)
  8. 如何从官网下载MySQL最新版本的安装包?
  9. Random()类生成随机数详解
  10. OverTheWire的bandit游戏1