为了账号安全,请及时绑定邮箱和手机立即绑定

约瑟夫环问题修改草稿

标签:
Java

package yuesefu.oneslide;
import java.util.Scanner;
import java.util.Arrays;
public class Xuesefu {

public static void main(String[] args) {
    Scanner read=new Scanner(System.in);
    System.out.println("罪犯总数:\n");
    int num=read.nextInt();//罪犯总数
    int j=0;//处决名单记录
    int prisoner[]=new int[num];    
    for(int i=0;i<num;i++){
      prisoner[i]=0;//new   
    }
    num=num-1;

    System.out.println("开始的罪犯索引:\n");
    int rannum=read.nextInt();//开始的罪犯索引
    rannum-=1;
    System.out.println("输入处决底数:\n");
    int lucky=read.nextInt();//处决底数数
    read.close();
    int remain=num;//剩余罪犯数
    if(num==1){
        System.out.print("index=0;");

    }else{
        while(remain!=1){
            for(int i=0;i<lucky;i=i+1){
                int bool=0;
                while(bool==0){
                    rannum++;
                    if(rannum==num){
                        if(prisoner[rannum]==0){
                           bool=1;
                           rannum=0;
                        }

                    }else{
                        if(prisoner[rannum]==0){
                            bool=1;
                        }
                    }
                }

            }
            prisoner[rannum]=1;
            System.out.println("被杀死"+rannum);

            if(rannum==num){
                rannum=0;
            }else{
                rannum++;
            }
            remain--;
        }

    }

}

}

点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消