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

約瑟夫問題的Python和C++求解方法

 更新時間:2015年08月20日 16:59:14   作者:prehistoric  
這篇文章主要介紹了約瑟夫問題的Python和C++求解方法,通過其示例我們也可以看出如今寫法最簡潔的編程語言和最復(fù)雜的語言之間的對比:D 需要的朋友可以參考下

么是約瑟夫問題?
約瑟夫問題是一個有趣的數(shù)學(xué)游戲,游戲規(guī)則如下:
1、N個人圍成一個圈,編號從1開始,依次到N。
2、編號為M的游戲參與者開始報數(shù),報數(shù)從1開始,后面的人報數(shù)接龍,直到K為止,報數(shù)為K的人將出局。
3、出局者的下一個玩家接著從1開始報數(shù),如此循環(huán),直到剩下一個玩家時游戲結(jié)束,這個玩家就是游戲獲勝者。
那么問題來了,哪個編號是游戲獲勝者呢?
下面通過簡單的幾行python代碼來解決這個問題:

#!/usr/bin/env python 
# Joseph Problem 
def joseph(total, begins, count): 
  queue = range(1, total + 1) 
  death = (begins + count - 2) % len(queue) 
  for times in range(total - 1): 
    print 'out: ', queue[death] 
    del queue[death] 
    death = (death + count -1) % len(queue) 
  print 'survivor: ', queue[0] 

joseph()函數(shù)中,參數(shù)total即上面提到的N,begins即M,count及K,每次循環(huán)報數(shù)out一個編號,最后剩下的survivor便是游戲獲勝者。

而C++的通常實(shí)現(xiàn)方法如下:

#include <iostream>
using namespace std;
void main()
{
 int N=0,C=0;
 cout<<"Please enter the number of people:N=";
 cin>>N;
 cout<<"Please enter:C=";
 cin>>C;
 int i=0,j=0,n=N,s=0;
 int *a=new int [N];
 for (i=0;i<N;i++)
 {
 a[i]=1;
 }

 while(0!=n)
 {
 s+=a[j];
 if(C==s)
 {
  a[j]=0;
  s=0;
  --n;
  if(0!=n)
  {
  cout<<j+1<<"->";
  }
  else
  {
  cout<<j+1<<endl;
  }
 }
 j=(j+1)%N;
 }
 delete []a;
}

這是C++語言常見的機(jī)試題目,以下程序?qū)崿F(xiàn)從控制臺輸入人數(shù)N,C并將剔除出隊(duì)列的人員編號按順序輸出到控制臺上。

相關(guān)文章

  • Selenium使用Chrome模擬手機(jī)瀏覽器方法解析

    Selenium使用Chrome模擬手機(jī)瀏覽器方法解析

    這篇文章主要介紹了Selenium使用Chrome模擬手機(jī)瀏覽器方法解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-04-04
  • 一些讓Python代碼簡潔的實(shí)用技巧總結(jié)

    一些讓Python代碼簡潔的實(shí)用技巧總結(jié)

    隨著項(xiàng)目代碼行數(shù)的增加,不可避免的遇到軟件架構(gòu)腐敗的問題,所以如何寫出簡潔的代碼至關(guān)重要,這篇文章主要給大家介紹了一些讓Python代碼簡潔的實(shí)用技巧,需要的朋友可以參考下
    2021-08-08
  • python制作圖片縮略圖

    python制作圖片縮略圖

    這篇文章主要為大家詳細(xì)介紹了python制作圖片縮略圖的相關(guān)方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • Python正則表達(dá)式re.compile()和re.findall()詳解

    Python正則表達(dá)式re.compile()和re.findall()詳解

    re?模塊提供了不少有用的函數(shù),用以匹配字符串,下面這篇文章主要給大家介紹了關(guān)于Python正則表達(dá)式re.compile()和re.findall()的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07
  • anaconda安裝后打不開解決方式(親測有效)

    anaconda安裝后打不開解決方式(親測有效)

    Anaconda是一個和Canopy類似的科學(xué)計算環(huán)境,但用起來更加方便,下面這篇文章主要給大家介紹了關(guān)于anaconda安裝后打不開解決的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2022-09-09
  • python處理html轉(zhuǎn)義字符的方法詳解

    python處理html轉(zhuǎn)義字符的方法詳解

    這篇文章主要介紹了python處理html轉(zhuǎn)義字符的方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了Python針對常見HTML轉(zhuǎn)義字符處理技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2016-07-07
  • python實(shí)現(xiàn)rar解壓和壓縮的方法(附源碼)

    python實(shí)現(xiàn)rar解壓和壓縮的方法(附源碼)

    數(shù)據(jù)量現(xiàn)在越來越大,壓縮文件在日常生活中很常用,這篇文章主要給大家介紹了關(guān)于python實(shí)現(xiàn)rar解壓和壓縮的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-10-10
  • python正則表達(dá)式面試題解答

    python正則表達(dá)式面試題解答

    這篇文章主要為大家分析了python正則表達(dá)式常見面試題,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • python Pygame的具體使用講解

    python Pygame的具體使用講解

    本篇文章主要介紹了python Pygame的具體使用講解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11
  • python+matplotlib繪制簡單的海豚(頂點(diǎn)和節(jié)點(diǎn)的操作)

    python+matplotlib繪制簡單的海豚(頂點(diǎn)和節(jié)點(diǎn)的操作)

    這篇文章主要介紹了python+matplotlib繪制簡單的海豚(頂點(diǎn)和節(jié)點(diǎn)的操作),具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01

最新評論

静乐县| 新野县| 邳州市| 南皮县| 木兰县| 新丰县| 海晏县| 曲沃县| 五河县| 祁阳县| 昌都县| 长乐市| 宜都市| 民丰县| 南投市| 疏附县| 布尔津县| 福鼎市| 贺兰县| 寻甸| 澳门| 吕梁市| 博湖县| 黑水县| 台江县| 思茅市| 益阳市| 南昌县| 县级市| 弥勒县| 沾化县| 垦利县| 南安市| 平阴县| 时尚| 道孚县| 吐鲁番市| 天全县| 娄烦县| 湘潭市| 时尚|