最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

代碼詳解Java猴子選王問題(約瑟夫環(huán))

 更新時間:2018年02月26日 09:51:30   作者:彬菌  
本篇文章通過實(shí)例給大家分析了java約瑟夫環(huán)這個經(jīng)典內(nèi)容,有興趣的跟著小編一起學(xué)習(xí)下吧。

關(guān)于約瑟夫環(huán)的基本知識:

羅馬人攻占了喬塔帕特,41人藏在一個山洞中躲過了這場浩劫。這41個人中,包括歷史學(xué)家josephus和他的一個朋友。剩余的39個人為了表示不向羅馬人屈服,決定集體自殺。大家決定了一個自殺方案,所有這41人圍城一個圓圈,由第一個人開始順時針報(bào)數(shù),沒報(bào)數(shù)為3的人就立刻自殺,然后由下一個人重新開始報(bào)數(shù)仍然是每報(bào)數(shù)為3的人就立刻自殺,......,知道所有人都自殺死亡為止.約瑟夫和他的朋友并不想自殺,于是約瑟夫想到了一個計(jì)策,他們兩個同樣參數(shù)到自殺方案中,但是最后卻躲過了自殺。請問是怎么做到的

代碼分享:

import java.util.HashMap; 
import java.util.Map; 
public class MonkeyKing { 
  public static void main(String args[]) { 
    int n = 100; // 猴子總數(shù) 
    int m = 3; // 報(bào)數(shù)出局?jǐn)?shù) 
    @SuppressWarnings("rawtypes") 
    Map map = new HashMap(); 
    int nn = 1; // 報(bào)數(shù)序號 
    int mm = 1; // 報(bào)數(shù)號 
    System.out.println("-----------------------" + n + "只猴子選大王開始-----------------------"); 
    for (int i = 1; i < n + 1; i++) { 
      map.put(i, i); 
    } 
    while (map.size() > 1) { 
      if (mm == 3) { 
        map.remove(nn); 
      } 
      nn++; 
      if (nn == n + 1) { 
        nn = 1; 
      } 
      if (map.get(nn) != null) { 
        mm++; 
      } 
      if (mm == m + 1) { 
        mm = 1; 
      } 
    } 
    String result = map.values().toString(); 
    System.out.println("第" + result.substring(1, result.length() - 1) + "只猴子當(dāng)選猴王"); 
  } 
}

相關(guān)文章

  • Intellij IDEA插件開發(fā)入門詳解

    Intellij IDEA插件開發(fā)入門詳解

    這篇文章主要介紹了Intellij IDEA插件開發(fā)入門詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-02-02
  • 使用RestTemplate調(diào)用RESTful?API的代碼示例

    使用RestTemplate調(diào)用RESTful?API的代碼示例

    在開發(fā)?Web?應(yīng)用程序時,調(diào)用?RESTful?API?是一個常見的任務(wù),本文將介紹如何使用?RestTemplate?調(diào)用?RESTful?API,并提供示例代碼,感興趣的同學(xué)可以跟著小編一起來看看
    2023-06-06
  • RestTemplate發(fā)送HTTP?GET請求使用方法詳解

    RestTemplate發(fā)送HTTP?GET請求使用方法詳解

    這篇文章主要為大家介紹了關(guān)于RestTemplate發(fā)送HTTP?GET請求的使用方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家<BR>33+多多進(jìn)步
    2022-03-03
  • 詳解springboot中的jar包部署步驟

    詳解springboot中的jar包部署步驟

    這篇文章主要介紹了springboot中的jar包部署步驟及l(fā)inux中部署項(xiàng)目常用指令,需要的朋友可以參考下
    2018-07-07
  • Java遞歸實(shí)現(xiàn)字符串全排列與全組合

    Java遞歸實(shí)現(xiàn)字符串全排列與全組合

    這篇文章主要為大家詳細(xì)介紹了Java遞歸實(shí)現(xiàn)字符串全排列與全組合,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • mybatis-plus?實(shí)現(xiàn)查詢表名動態(tài)修改的示例代碼

    mybatis-plus?實(shí)現(xiàn)查詢表名動態(tài)修改的示例代碼

    通過MyBatis-Plus實(shí)現(xiàn)表名的動態(tài)替換,根據(jù)配置或入?yún)⑦x擇不同的表,本文主要介紹了mybatis-plus?實(shí)現(xiàn)查詢表名動態(tài)修改的示例代碼,具有一定的參考價值,感興趣的可以了解一下
    2025-03-03
  • 基于tomcat8 編寫字符編碼Filter過濾器無效問題的解決方法

    基于tomcat8 編寫字符編碼Filter過濾器無效問題的解決方法

    下面小編就為大家分享一篇基于tomcat8 編寫字符編碼Filter過濾器無效問題的解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • jdk11?jdk17多版本共存切換方式

    jdk11?jdk17多版本共存切換方式

    這篇文章主要介紹了jdk11?jdk17多版本共存切換方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • 教你用IDEA配置JUnit并進(jìn)行單元測試

    教你用IDEA配置JUnit并進(jìn)行單元測試

    今天教各位小伙伴怎么用IDEA配置JUnit并進(jìn)行單元測試,文中有非常詳細(xì)的圖文介紹及代碼示例,對正在學(xué)習(xí)IDEA的小伙伴有很好的幫助,需要的朋友可以參考下
    2021-05-05
  • java中String.intern()方法功能介紹

    java中String.intern()方法功能介紹

    這篇文章主要介紹了java中String.intern()方法具有什么功能,主要包括String.intern原理,JDK6中String.intern()的相關(guān)知識,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-06-06

最新評論

宜章县| 崇左市| 东方市| 大安市| 彭山县| 泽库县| 无极县| 巨鹿县| 土默特右旗| 白山市| 二手房| 东兴市| 灵川县| 开鲁县| 巴楚县| 安岳县| 洪洞县| 富源县| 内黄县| 凉城县| 桦甸市| 勐海县| 徐闻县| 敖汉旗| 伊金霍洛旗| 类乌齐县| 灵台县| 景德镇市| 六盘水市| 永和县| 海南省| 宁晋县| 巍山| 鹤峰县| 唐河县| 遂昌县| 丰城市| 鱼台县| 金川县| 丰县| 巴楚县|