java 围圈报数_Java实现所有人围成一圈顺序排号。从第一个人开始报数(从 1 到 3 报数) 凡报到 3 的人退出圈子剩下的人继续报数最后留下的当选为队长。 请你通过编写程序求出一组人中的队长是...

Java实现所有人围成一圈顺序排号。从第一个人开始报数(从 1 到 3 报数) 凡报到 3 的人退出圈子剩下的人继续报数最后留下的当选为队长。 请你通过编写程序求出一组人中的队长是原来第几位

By 张旭 CaesarChang 合作 : root121toor@gmail.com

关注我 带你看更多好的技术知识和面试题思路结合注释:

首先获取一个总人数 , 然后开一个数组,初始化为1 ,在开一个计数器 suM, 如果sum==3

那么将数组为 0 ,并且更新 剩余人数,只要剩余人数不是1,那就在while循环里面不断循环 ,

最后输出数组中值为1的下标+1就好了 (从0开始的数组)import java.util.Scanner;

public class Day4_demo1 {

public static void main(String[] args) {

System.out.println(请输入总人数:);

Scanner scanner=new Scanner(System.in);

int totalNum=scanner.nextInt(); //获取总人数

int[] number=new int[totalNum]; //为总人数开辟一个数组

for(int i=0;itotalNum;i++){ //为数组初始化 全为1

number[i]=1;

}

int remain=totalNum; //记录当前剩余人数

int sum=0; //用来计数 判断是否等于3

while(remain!=1){ //判断是否剩余人数为1

for(int i=0;itotalNum;i++){ //进行遍历数组

sum=sum+number[i]; //更新计数

if(number[i]==0){ //为0的人不遍历

continue;

}

if(sum==3){ //如果报数为3

number[i]=0; //将此人值设为0

sum=0; //将sum清零

remain--; //剩余的人数更新

}

}

}

for(int i=0;itotalNum;i++){ //输出不为0的人的(下标+1)

if (number[i]!=0){

System.out.println(队长所在位置为 +(i+1));

}

}

}

}

Java实现所有人围成一圈顺序排号。从第一个人开始报数(从 1 到 3 报数) 凡报到 3 的人退出圈子剩下的人继续报数最后留下的当选为队长。 请你通过编写程序求出一组人中的队长是原来第几位 相关文章

Java实现给你一个 m * n 的矩阵 grid矩阵中的元素无论是按行还是按列都以非递增顺序排列。 请你统计并返回 grid 中 负数 的数目。

输入:grid = [[4,3,2,-1],[3,2,1,-1],[1,1,-1,-2],[-1,-1,-2,-3]] 输出:8 解释:矩阵中共有 8 个负数。 输入:grid = [[1,-1],[-1,-1]] 输出:3 class Solution { public int countNegatives(int[][] arr) { int high=arr[0].length-1,low=0; int count=0;

Java实现反转一个单链表,最详细 你绝对可以听懂

输入: 1-2-3-4-5-NULL输出: 5-4-3-2-1-NULL /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Solution { public ListNode reverseList(ListNode head) { List

Java求相交链表编写一个程序找到两个单链表相交的起始节点。

其核心思想就是:若两个指针所走的总长度相同,则必然能够并排同时到达终点。 所以使用两个指针pA和pB分别指向链表A、B,若第一趟就能够相交最好不过。否则一旦pA走到底就从B链表开始走,pB走到底就从A链表开始走。这样pA和pB所走的总路径长度都是A、B两个链

利用Map实现找到其中的多数元素。多数元素是指在数组中出现次数大于?? n/2 ??的元素。

输入: [3,2,3]输出: 3 示例 2: 输入: [2,2,1,1,1,2,2]输出: 2 给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数大于 ? n/2 ? 的元素。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 class Solution { public int m

Latex绘制流程图

实现效果 codes \documentclass[UTF8]{ctexart}\usepackage{tikz}\usetikzlibrary{shapes,arrows}\begin{document}\pagestyle{empty} % 无页眉页脚\tikzstyle{startstop} = [rectangle,rounded corners, minimum width=3cm,minimum height=1cm,text centered,

为自己的网站实现Heatmap

Heatmap,已经有网站提供此类服务,如:clickdensity,clicktale,crazyegg等等,甚至还有类似clickheat项目提供源代码供你直接使用。 不过最灵活的方案莫过于自己搞定,下面大概说说Heatmap的实现: 捕捉点击 当然,这需要Javascript来实现。为了不陷入浏览

通过JNI实现Java对C/C++的调用

默认,所有iOS设备在过了设定的休眠时间后,都会自动锁屏。 如果你的应用不希望iOS设备自动锁屏,可以使用以下方式来保持屏幕一直开着。 // Disable the idle timer[[UIApplication sharedApplication] setIdleTimerDisabled: YES]; // Or for those who pre

Java使用Jsch工具连接linux服务器执行命令/上传/下载

1.maven中引入依赖jsch 最新版本信息查看Maven Repository: dependency groupIdcom.jcraft/groupId artifactIdjsch/artifactId version0.1.55/version/dependency 2.编写工具类JSchUtil 1 package com.drz.proxy.internetProxy.util; 2 3 import java.io.Bu

快到春节了,用 Python 实现一场烟花秀

春节的脚步越来越近了,每逢春节很多地方都会燃放烟花来增添节日的气氛,然而因环境污染的加剧,近年来不少地方已经禁 止燃放烟花了,为了弥补这个遗憾,本文我们来看一下如何使用 Python 来实现一场烟花秀。 实现 功能实现用到的 Python 库包括:tkinter、P

java调用linux命令执行

Java调用Linux命令执行 调用方式 Java调用linux命令执行的方式有两种,一种是直接调用linux命令,一种是将linux命令写到.sh脚本中,然后调用脚本执行。 详细说明 直接调用:使用java中lang包下面的Runtime类和Process类,其中Runtime类中的Runtime.getRuntim

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值