(noip模拟 约瑟夫游戏)<神**乱搞题>

趣味算法------约瑟夫环 经典算法题,通过简单的规律找到问题的求解方法并且使用短代码实现。 阅读详情

Problem

【问题描述】
YJC 很喜欢玩游戏,今天他决定和朋友们玩约瑟夫游戏。
约瑟夫游戏的规则是这样的:n 个人围成一圈,从 1 号开始依次报数,当报到 m 时,
报 1、2、…、m-1 的人出局,下一个人接着从 1 开始报,保证(n-1)是(m-1)的倍数。最后剩
的一个人获胜。
YJC 很想赢得游戏,但他太笨了,他想让你帮他算出自己应该站在哪个位置上。
【输入格式】
第一行包含两个整数 n 和 m,表示人数与数出的人数。
【输出格式】
输出一行,包含一个整数,表示站在几号位置上能获得胜利。
【输入输出样例】
joseph.in :10 10
joseph.out :10
【数据说明】
对于 30%的数据,满足 2≤n≤1000;
对于 50%的数据,满足 2≤n≤1000000;
对于 100%的数据,满足 2≤m≤n<2 63 -1 且(n-1)是(m-1)的倍数。


Solution

自己想


Code

// by spli
#include<cstring>
#include<cstdio>
#include<iostream>
#include<algorithm>
#define LL unsigned long long
using namespace std;

LL n,m;
LL ans;

LL dfs(LL k,LL r){
    if(k==1) return 1ll;
    LL x=k/m,y=k%m;
    ans=dfs(x+y,y);
    ans*=m;ans-=r;
    return ans;
}

int main(){
    cin>>n>>m;
    ans=dfs(n,0);
    cout<<ans;
    return 0;
}
约瑟夫死亡游戏(C语言代码) 约瑟夫生死游戏的C语言代码及设计思路及逻辑,循环链表的整体算法思想 立即下载

相关推荐

c语言用数组方法解决约瑟夫环问题

这个题我是用数组下标置0方法做的,类似单链表的性质,这个方法是模拟了游戏过程,是比较笨的代码,喜欢研究的朋友可以用相关算法来实现。时间复杂度为O(n^2),代码注释很详细,基本每一行我都写了注释,稍微有点基础的就可以看的懂

约瑟夫游戏(循环队列实现)

约瑟夫游戏的循环队列方案

qq_64357371的博客 553

约瑟夫生者死者游戏

①、掌握线性表的表示和实现 ②、学会定义抽象数据类型 ③、学会分析问题,设计适当的解决方案 ④、深入掌握栈和队列应用的算法设计。

#74 约瑟夫游戏

题目描述: 约瑟夫游戏的主要问题: 输入:总人数 N 剩余人数 K 间隔人数 M 其中的间隔人数为实际间隔的人数,如果剩余人数为0,则输出0。 比如,输入8 4 3(空格分隔输入) 输出1,3,6,7(逗号分隔输出) 输入数据错误时,输出ERROR 分析过程如下: 1、初始状态 1 2 3 4 5 6 7 8 2、间隔三个删除, 4,8 3、余下人数大于4,流程继续删除 5,2 4、现在剩下人数4人=K,剩余输出余下的人有:1,3,6,7 参考代码: #inclu

桃之妖妖,濯濯其华 5048

约瑟夫游戏(30乘客剩下15个).cpp

约瑟夫生死游戏 问题描述:每30个乘客同乘一艘船,因为严重超载,加上风高浪大,危险万分,因此船长告诉乘客,只有将全船一半乘客投入海中,其余人才能幸免于难。无奈,大家只得同意这种办法,并议定30个人围成一圈,由第1个人数起,依次报数,数到第9人,便把他投入大海中,然后再从他的下一个人数起,数到第9人,再将他扔到大海中,如此循环地进行,直到剩下15个乘客为止。问哪些位置是将被扔下大海的位置。

约瑟夫生死游戏

c语言实现约瑟夫生死游戏,从一组数中依次剔除

约瑟夫游戏(姓名)

约瑟夫问题来源于公元1世纪的犹太历史学家Josephus。问题描述,有n个人(分别用姓名表示)围成一个圆圈,从编号为1的人开始进行1~m正向报数,报到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;如此重复下去,直到所有的人全部出列,求出列的顺序。

2301_80348313的博客 543

ChatBI告别“NL2SQL依赖症”!从准确率50%到90%,3大技术路线+4个企业案例拆解核心玩法

摘要: ChatBI通过自然语言交互实现数据民主化,其核心是“语义理解+数据执行+知识沉淀”的全链路能力,而非单一的NL2SQL技术。行业采用三大技术路线提升准确率:专有知识库(提升30%)、指标标签语义层(准确率85%)、JSON中间层(多轮对话提升25%)。数据执行方案包括NL2SQL、NL2API等,需结合场景选择。企业落地需解决四大痛点:跨表查询准确率低(引入拓扑图)、模糊查询(用户干预机制)、响应慢(预计算缓存)、多轮对话(上下文池)。Spring AI Alibaba提供轻量级集成方案,助力企业

weixin_52610848的博客 1656

约瑟夫游戏(编号+密码)

编号为1、2、3、...、N的N个人按顺时针方向围坐一圈,每人持有一个密码(正整数)。从指定编号为1的人开始,他的密码为M的初始值,按顺时针方向从1号自己开始顺序报数,报到指定数M时停止报数,报M的人出列,并将他的密码作为新的M值,从他在顺时针方向的下一个人开始,重新从1报数,报到M的人出列;出列人的密码作为下一轮报数的值。依此类推,直至所有的人全部出列为止。请设计一个程序求出出列的顺序,人数N及每个人的密码值从键盘输入。要求:用二维数组完成(不得使用结构体)。

2301_80348313的博客 555

Uniapp-APP后台保活插件(安卓后台保活)

Uniapp-APP后台保活插件(安卓后台保活)亲测有效!

weixin_57844432的博客 1万+

网工实验笔记:SNMP的配置

简单网络管理协议SNMP(Simple Network Management Protocol)是广泛应用于TCP/IP网络的网络管理标准协议。SNMP提供了一种通过运行网络管理软件的中心计算机(即网络管理工作站)来管理设备的方法。

2301_76170756的博客 2116

数据结构与算法--我们来玩丢手绢(约瑟夫环问题)

我们来玩丢手绢 昨天我们打扑克,今天我们丢手绢 丢手绢我们都知道这个游戏,他的由来由约瑟夫 (Josephus)提出来的 据说著名犹太历史学家Josephus有过以下的故事:在罗马人占领乔塔帕特后,39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人抓到,于是决定了一个自杀方式,41个人排成一个圆圈,由第1个人开始报数,每报数到第3人该人就必须自杀,然后再由下一个重新报数,直到所有人都自杀身亡为止。然而Josephus 和他的朋友并不想遵从。首先从一个人开始,越过k

0102的博客 944

SRAM故障排查实战:如何用Nano Prober定位6T存储单元的异常点

本文详细介绍了在SRAM故障排查中,如何运用Nano Prober(纳米探针)技术精准定位6T存储单元的内部异常。面对传统方法难以发现的电性参数漂移(如晶体管阈值电压偏移)或微小物理缺陷,Nano Prober能直接对单个6T单元内的晶体管进行I-V特性测量,结合失效模式分析,有效解决读写错误等疑难问题,是芯片失效分析的关键工具。

v5w6x的博客 668

算法-数学-约瑟夫环(孩子们的游戏)

n-3,n-2的最终剩余的数.重新编号前的数列也是一个单独的题目,题目为求m%n,(m+1)%n,(m+2)%n,(m+3)%n,……m-3,m-2的最终剩余的数的位置得出了结果,那求n个数最终剩余数字的位置不也是这个结果吗。从这里我们很容易看出,n=3的子问题,0,2最后得出的位置和n=2的问题,0,1,最后求得的位置一定是一样的.因为这时候是两个问题的n都是2,m都是2,所以最后的位置一定是一样的.所以我们只要利用(m+x)%n=(2+0)%3=2,就得出了n=3的时候剩余的位置在在2这个数字的位置.

StramChen的博客 1650

高斯泼溅(Gaussian Splatting):3D建模的颠覆性革命

高斯泼溅(Gaussian Splatting):3D建模的颠覆性革命

yingtu666的博客 5156

FPGA:将FIFO封装成AXI接口的IP

封装AXI_stream的接口IP核

m0_46830519的博客 4217

数据结构——循环链表之约翰夫生死游戏

数据结构——循环链表之约翰夫生死游戏 一.什么是约翰夫生死游戏? 约瑟夫游戏的大意是: 每30个旅客同乘一条船,因为严重超载,加上风高浪大,危险万分;因此船长告诉乘客,只有将全船一半的旅客投入还中,其余人才能幸免遇难。无奈,大家只得同意这种办法,并议定30个人围成一圈,由第一个人数起,依次报数,数到第9人,便把他投入大海中,然后再从他的下一个人数起,数到第9人,再将他扔进大海中,如此循环地进行,直...

yulingzheng的博客 1213

Oracle EBS R12 AR 标准发票 核心表结构

​ Oracle EBS R12 AR 标准发票 核心表结构 聚焦手动标准发票 (Standard Invoice),按头→行→分配→税→收款计划→会计分录→历史分层,标注主键、外键、关键字段、业务含义,同时说明表间关联关系,适配开发 / 运维 / 数据核对场景。 一、主数据层(发票头 + 行,核心业务表) 1. RA_CUSTOMER_TRX_ALL 【发票头表】 作用:存储整张发票头部信息,一张发票对应一条记录,AR 发票主表。 主键:CUSTOMER_TRX_ID (唯一 ID,系统内部键) 业

金牌架构师 282

【数据结构C/C++】约瑟夫环以及约瑟夫生死者游戏的C/Java代码实现

文章目录前言一、概念了解二、实验设计1.链表初始化2.功能实现总结 前言 约瑟夫环问题,是一个经典的循环链表问题,题意是:已知 n 个人(分别用编号 1,2,3,…,n 表示)围坐在一张圆桌周围,从编号为 k 的人开始顺时针报数,数到 m 的那个人出列;他的下一个人又从 1 开始,还是顺时针开始报数,数到 m 的那个人又出列;依次重复下去,直到圆桌上剩余一个人。 如图所示,假设此时圆周周围有 5 个人,要求从编号为 3 的人开始顺时针数数,数到 2 的那个人出列: 出列顺序依次为: 编号为 3 的人开.

Zhangsama1的博客 1万+

【Py/Java/C++/C/JS/Go六种语言OD独家2024E卷真题】20天拿下华为OD笔试之【固定滑窗】2024E-考勤信息【欧弟算法】全网注释最详细分类最全的华为OD真题题解

可上练习华子OD、大厂真题绿色聊天软件戳oj1441了解算法冲刺训练(备注【优快云】否则不通过)

weixin_48157259的博客 619

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

noip胡测之8.15(没有正解)

T1 约瑟夫游戏 (joseph.cpp/c/pas) 【问题描述】 YJC 很喜欢玩游戏,今天他决定和朋友们玩约瑟夫游戏。 约瑟夫游戏的规则是这样的:n 个人围成一圈,从 1 号开始依次报数,当报到 m 时,报 1、2、…、m-1 的人出局,下一个人接着从 1开始报,保证(n-1)是(m-1)的倍数。最后剩的一个人获胜。 YJC 很想赢得游戏,但他...

weixin_30346033的博客 161

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

约瑟夫游戏

【问题描述】 YJC 很喜欢玩游戏,今天他决定和朋友们玩约瑟夫游戏。 约瑟夫游戏的规则是这样的:n 个人围成一圈,从 1 号开始依次报数,当报到 m 时, 报 1、2、…、m-1 的人出局,下一个人接着从 1 开始报,保证(n-1)是(m-1)的倍数。最后剩 的一个人获胜。 YJC 很想赢得游戏,但他太笨了,他想让你帮他算出自己应该站在哪个位置上。 【输入格...

weixin_30296405的博客 385

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

约瑟夫问题及其变形

又来掘墓了。。。什么是约瑟夫问题呢 据说著名犹太历史学家 Josephus有过以下的故事: 在罗马人占领乔塔帕特后,39 个犹太人与Josephus及他的朋友躲到一个洞中, 39个犹太人决定宁愿死也不要被敌人抓到,于是决定了一个自杀方式,41个人排成一个圆圈,由第1个人开始报数,每报数到第3人该人就必须自杀, 然后再由下一个重新报数,直到所有人都自杀身亡为止。 然而Jos

Coco_T的博客 2867

test 7 Problem A: [noip2016十连测第七场]约瑟夫游戏 (找规律+数论)

Problem A: [noip2016十连测第七场]约瑟夫游戏 Time Limit: 20 Sec  Memory Limit: 233 MB Submit: 20  Solved: 9 [Submit][Status][Web Board] Description YJC很喜欢玩游戏,今天他决定和朋友们玩约瑟夫游戏。约瑟夫游戏的规则是这样的:n个人围成一圈,从1号开始

clover_hxy的博客 1107

NOIP2017模拟赛 约瑟夫游戏(数学乱搞)

问题描述Y JC 很喜欢玩游戏,今天他决定和朋友们玩约瑟夫游戏。 约瑟夫游戏的规则是这样的:n 个人围成一圈,从1 号开始依次报数,当报到m 时,报1、2、…、m-1 的 人出局,下一个人接着从1 开始报,保证(n−1)是(m−1)的倍数。最后剩的一个人获胜。 Y JC 很想赢得游戏,但他太笨了,他想让你帮他算出自己应该站在哪个位置上。输入格式第一行包含两个整数n 和m,表示人数与数出的人数输出格式

nkliuorz的博客 465

约瑟夫问题(基于NOIP初赛题的改编)

什么鬼互测题系列。。这个我至少推出来了

zzk_233的博客 523
上一篇: (hdu 2089 不要62)<基础数位DP>
下一篇: (CF 148D Bag of mice)<简单概率DP>
SDFZspli
博客等级 码龄10年 17粉丝 80原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值