美文网首页
每天一到算法题

每天一到算法题

作者: 布朗克的黑猫 | 来源:发表于2019-03-05 13:56 被阅读0次

题目:有一艘海盗船上面有30个海盗,分别为海盗1-30号忽然海盗船撞上了冰山,船上只能留下一个人,船长命令大家循环数数,数到7和7的倍数的人,跳到海里去。

请问最后留下的那个人是第一开始的几号海盗?

分析:

代码:

import java.util.ArrayList; import java.util.List; import java.util.Scanner;

/** * N个人从1到N编号,围城一圈, * 从1开始报数, 数到m时,将m的编号输出,那个船员将会殒命, * 下一个从1再开始报数,直到所有人都出去//由于数的是7或者7的倍数,相当于1234567循环数,数到7就下去 * */

public class Haidao1 { public static void main(String[] args) { List list = new ArrayList(); System.out.println("请输入被困在船上的海盗人数N:"); Scanner sca = new Scanner(System.in); int N = sca.nextInt(); // 提示输入要出圈的数值

System.out.println("请输入要跳下船去的数值M:");

int M = sca.nextInt(); System.out.println("按跳下的次序输出序号:");

//自动装箱这里装入30号 for(int i=0 ;i<N;i++){ list.add(i+1); } int i=-1;

//初始化数值用i来记录 int countX=0;//记录数数的数值

while(list.size()!=0)

{ ++i; i

f(i== list.size())

{ i=0; }

++countX; if(countX==M){//输出 System.out.print(list.get(i)+ " "); list.remove(i); countX=0; i--;//修正 } } System.out.println("输出序号的最后一个就是最后生还的人");} }

相关文章

  • 每天一到算法题

    题目:有一艘海盗船上面有30个海盗,分别为海盗1-30号忽然海盗船撞上了冰山,船上只能留下一个人,船长命令大家循环...

  • 零基础python刷leetcode -- 1. Two Sum

    算法很重要,但是每天也需要学学python,于是就想用python刷leetcode 的算法题,从第一题开始,从简...

  • 算法题资源

    算法网站LeetCodeCodewars 个人出题每日一道算法题 每天小胡子哥都会出一道题。到目前为止(2017/...

  • Android面经| 算法题解

    整理了校招面试算法题,部分《剑指offer》算法题,以及LeetCode算法题,本博文中算法题均使用Java实现校...

  • 为什么坚持写字?

    周六晚上,静静的写点文字,来完成今天的日更吧,其实今天也有刷剑桥offer的算法题,自从开始刷算法题,每天的...

  • 100天计划

    计划书:每天3个算法题、3个知识点2018-12-19 算法题: 快排时间复杂度:O(nlogn),最坏情况下O(...

  • [活动]每天一题算法题

    要牛逼,请刻意练习 目的 甭管属于那种猿类,算法都是你指点江山的基础,越是牛逼的公司对此越为重视,又是工作季,你忐...

  • 面试题高频算法题整理

    以下算法题几乎都是简单题,都为面试算法题值得刷的题,需要理解并记住解题思路,而其中★标注的题,更是面试算法题中的高...

  • Swift之每天一道算法题

    每天一道算法题 :https://github.com/jixiang0903/JJAlgorithm-swif...

  • 回溯,贪心,动态规划

    1.回溯算法思想leetcode 112 号算法题:路径总和leetcode 113 号算法题:路径总和 IIle...

网友评论

      本文标题:每天一到算法题

      本文链接:https://www.haomeiwen.com/subject/kjgnuqtx.html