约瑟夫环Ruby算法

简介:
N个人排成一圈,编号为1~n。
从1号开始报数,当报到M时,该位置的人出局,余下的人依然是一个圈,从下一个人开始报数(从1开始),再到第M个出局。

输入n和m,输出这个出局序列

RUBY代码:
def circle(n,m)
  arr=(1..n).to_a
  i=0
  while arr.length>0
    x=(i+m-1)%arr.length
    puts arr[x]

    arr.delete_at(x)
    i=x
  end
end

puts "input n and m: [eg:12,5]"
n,m=gets.chomp.split(",")
circle(n.to_i,m.to_i)




本文转自 fsjoy1983 51CTO博客,原文链接:http://blog.51cto.com/fsjoy/140486,如需转载请自行联系原作者
目录
相关文章
|
2月前
|
算法 安全 调度
【动态规划篇】穿越算法迷雾:约瑟夫环问题的奇幻密码
【动态规划篇】穿越算法迷雾:约瑟夫环问题的奇幻密码
|
6月前
|
算法 Java
数据结构与算法学习六:单向环形链表应用实例的约瑟夫环问题
这篇文章通过单向环形链表的应用实例,详细讲解了约瑟夫环问题的解决方案,并提供了Java代码实现。
71 0
|
11月前
|
算法 C语言
约瑟夫环的C语言和86/88汇编非递归算法
约瑟夫环的C语言和86/88汇编非递归算法
105 0
|
算法 索引 Python
Python|约瑟夫环算法
Python|约瑟夫环算法
107 0
|
算法 C++ Python
【每日算法Day 85】图解算法:一行代码解决约瑟夫环的变体
【每日算法Day 85】图解算法:一行代码解决约瑟夫环的变体
143 0
|
存储 算法 C++
【每日算法Day 74】经典面试题:约瑟夫环,我敢打赌你一定不会最后一种方法!
【每日算法Day 74】经典面试题:约瑟夫环,我敢打赌你一定不会最后一种方法!
100 0
|
机器学习/深度学习 自然语言处理 算法
|
机器学习/深度学习 自然语言处理 算法
再学一道算法题:危险的七(约瑟夫环问题)
这是一道学校acm基地招新的题    我之前也写过一道有几分相似的题,所以比赛的时候写的快一点,但是也没有完全理解,容易自己都搞混,有朋友问我的解题思路时,我也讲错,这大可能是自身能力不够,这提醒我还需要继续提升自己的实力
再学一道算法题:危险的七(约瑟夫环问题)
|
机器学习/深度学习 算法 Ruby