【语言-C++】一圈猴子,数数淘汰,最后剩下谁?
来源:互联网 发布:人群密度算法源码 编辑:程序博客网 时间:2024/05/10 04:43
#include <iostream>using namespace std;int jp(int n,int s,int m)//n 表示一圈多少人,s表示从第几个开始数,m表示淘汰第几个{int ans;int *A=new int[n];for(int i=0;i<n;i++)A[i]=i+1;for(int k=n;k>1;k--)//n-1次出局后,就是结果{int choice=(s-1+m-1)%k;//出局人的数组元素下标s=choice+1;if(s==k)s=1;if(choice!=k-1){//cout<<A[choice]<<",";//依次删除for(int m=choice;m<k-1;m++)//出局人删除,依次向前移动一个位置A[m]=A[m+1];}}ans=A[0];delete []A;return ans;}int main(){cout<<jp(100,2,7)<<endl;return 0;}
- 【语言-C++】一圈猴子,数数淘汰,最后剩下谁?
- 50个人围成一圈数数,数到3的倍数时出圈,最后剩下的人是谁?
- 50个人围成一圈数数,数到3的人退出,求最后剩下的人的编号
- N个人围成一圈数数,每当数到3的倍数时出圈,最后剩下的人是谁?
- 【C/C++】n个猴子站成一圈,每次从第p个数m个猴子并出列,然后继续数,直到只剩下最后一个,并输出其位置。
- 15个猴子围成一圈选大王,一次1-7循环报数,报到7的猴子淘汰,直到最后一只猴子成为大王
- n个小孩围城一圈数数,数到 2^k, 就退出圈子。07年 C 语言最后一道![专硕]@NEU
- Java实现约瑟夫环:50个人围成一圈数数,数到3的人退出,求最后剩下的人的编号
- N个人站一圈,从1开始喊道M退出,最后剩下谁?
- C:n人站成一圈,报数到m的人离开队伍,求最后剩下的是第几人
- c语言数数小游戏
- 有n个人围成一圈,顺序排号,然后数数进行淘汰的解法和一些思考
- 转圈数数淘汰
- n个人排成一圈,从1开始报数,数到3,退出,剩下的最后一个人
- 【算法】n个小孩围成一圈,数到5出列,求最后剩下的人
- 1号 到 100号 数数 123 数到 3 退出 最后剩下几号
- 一群猴子排成一圈
- 15只猴子依次报数,报到7的猴子就退出,求最后剩下的那只猴子
- USB调试默认修改
- C++ 全局变量的声明和定义
- 笔记1-2: 将标准输入复制到标准输出
- 隐马尔科夫模型(HMM)及其扩展
- 软考2013年软考信息系统管理工程师考试选择题精选(1)
- 【语言-C++】一圈猴子,数数淘汰,最后剩下谁?
- XP 用命令查看和杀死进程
- linux命令-- 计算文件数量
- Objective-C runtime之消息转发机制(三)
- tinkphp $_auto
- XML or text declaration not at start of entity
- spring3.1.1常用jar包
- TCP3次握手和4次挥手具体状态
- Linux NFS服务器的安装与配置