約瑟夫環的解決

2021-06-18 03:32:22 字數 941 閱讀 5542

約瑟夫環是乙個數學的應用問題:已知n個人(以編號1,2,3...n分別表示)圍坐在一張圓桌周圍。從編號為k的人開始報數,數到m的那個人出列;他的下乙個人又從1開始報數,數到m的那個人又出列;依此規律重複下去,直到圓桌周圍的人全部出列。

自己編寫的:

#include struct ysf_node

;void create_ysf_list(struct ysf_node* head, unsigned int number)

head->prev = node;

printf("create ysfh successful!\n");

}void del_bad_index(struct ysf_node* head, unsigned int bad_index,unsigned int number)

//delete bad_node

bad_node->prev->next = bad_node->next;

bad_node->next->prev = bad_node->prev;

head = bad_node->next;

bad_node->prev = bad_node;

bad_node->next = bad_node;

printf("%d: bad people : %d\n",tmp_number, bad_node->index);

free(bad_node);

bad_node = null;

tmp_index = 0;

number --;

tmp_number++;

}printf("winner: %d\n",head->index);

}void del_ysf_list(struct ysf_node* head)

int main()

約瑟夫環問題的解決

約瑟夫環問題介紹 已知n個人 以編號1,2,3.n分別表示 圍坐在一張圓桌周圍。從編號為1的人開始報數,數到m的那個人出列 他的下乙個人又從1開始報數,數到m的那個人又出列 依此規律重複下去,直到圓桌周圍的人全部出列。include include include typedef int datat...

約瑟夫環問題的解決

約瑟夫環問題介紹 已知n個人 以編號1,2,3.n分別表示 圍坐在一張圓桌周圍。從編號為1的人開始報數,數到m的那個人出列 他的下乙個人又從1開始報數,數到m的那個人又出列 依此規律重複下去,直到圓桌周圍的人全部出列。include include include typedef int datat...

php解決約瑟夫環

今天偶遇一道演算法題 約瑟夫環 是乙個數學的應用問題 一群猴子排成一圈,按1,2,n依次編號。然後從第1只開始數,數到第m只,把它踢出圈,從它後面再開始數,再數到第m只,在把它踢出去 如此不停的進行下去,直到最後只剩下乙隻猴子為止,那只猴子就叫做大王。要求程式設計模擬此過程,輸入m n,輸出最後那個...