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

完整代码:

复制代码
/* 有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人
退出圈子,问最后留下的是原来第几号的那位*/
#include<stdio.h>

//约瑟夫问题
//递推关系f(n)=(f(n-1)+2)\mod n + 1 
int func(int n){
    if (n==1)
    {
        return 1;
    }
    else{
        return (func(n-1)+2)%n+1;
    }
}

int main(){
    int n;
    printf("输入人数n:");
    scanf("%d",&n);
    printf("最后留下的是原来第%d号的那位",func(n));
    return 0;
}

运行截图:

相关推荐
闻道且行之9 小时前
C/C++ HTTP 服务:常用方法与实现方式全解析
c语言·c++·http·libhv·curl·mongoose·libcurl
Wect9 小时前
LeetCode 4. 寻找两个正序数组的中位数:二分优化思路详解
前端·算法·typescript
ZPC82109 小时前
moveitcpp 没办法执行的问题
人工智能·pytorch·算法·机器人
YJlio9 小时前
《Windows 11 从入门到精通》读书笔记 1.4.9:全新的微软应用商店——“库 + 多设备同步”把它从鸡肋变成刚需入口
c语言·网络·python·数码相机·microsoft·ios·iphone
智者知已应修善业9 小时前
【C++非递归剪枝问题凑钱方案数】2024-7-18
c语言·c++·经验分享·笔记·算法·剪枝
YJlio9 小时前
《Windows 11 从入门到精通》读书笔记 1.4.10:集成的微软 Teams——办公与社交的无缝衔接
c语言·网络·python·数码相机·ios·django·iphone
星辰徐哥9 小时前
C语言Web开发:CGI、FastCGI、Nginx深度解析
c语言·前端·nginx
Yolo_TvT9 小时前
C++:缺省参数
开发语言·c++·算法
进击的小头9 小时前
第19篇:多个PI控制器串联控制系统设计与参数整定调试实战
python·算法
承渊政道9 小时前
【优选算法】(实战领略前缀和的真谛)
开发语言·数据结构·c++·笔记·学习·算法