多人数数字,数到三退出算法实现

本文介绍了使用Java实现的一种算法,用于模拟n个人围坐一起数数,数到3的人出局,记录出局顺序,最终确定赢家的过程。算法通过创建数组并跳过已淘汰的玩家(用0表示),在一轮结束后返回首位玩家,以此类推。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


#java实现n个人围坐在一起数数字,数到3就退出,按退出的的顺序把数字排出来,最后的是赢家


###算法思想:创建一个数组,从0开始,赋值1,2,3,1,2,3…第一轮,十分简单,但从第二轮开始,就要跳过被淘汰的玩家,我这边给被淘汰的玩家赋值为0,每个玩家数数字时,先判断是否被淘汰,如果被淘汰,则循坏加1,即跳过该玩家。然后到最后一个玩家时,返回第一个玩家。话不多说,上代码。

//n个人围坐在一起数数字,数到3就退出,按退出的的顺序把数字排出来,最后的是赢家
public class Game {
 public static void main(String[] args) {
  game3(10);
 }
 
 //游戏算法,传入size规定是几个人游戏
 public static void game3(int size) {
  int[] array = new int[size]; //创建一个数组保存所有的人
  //给数组赋值为1,方便下面进行if选择
  for(int i =0;i<size;i++)
   array[i]=1;
  //定义一个x来定义玩家编号,因为要输出每个人编号,array长度不能有变化,x至始至终只能是0到19
  int x=0;
  System.out.println("淘汰顺序:");
  //外层循坏负责淘汰人数,有size个人游戏,就会淘汰size-1个玩家,到最后一层循环输出赢家编号
  for(int i=0;i<size;i++) 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值