简单的for循环理解约瑟夫循环问题。

约瑟夫循环问题:

十七个猴子选大王,从一开始报数,报到三的猴子会推出选举,轮流下去直到还剩一个猴子。

int i = 0; int a = 0; int b = 17; int[] arr = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 }; while (b > 1) { for (i = 0; i < arr.Length; i++) { if (arr[i] != 0) { a += 1; } if (a == 3) { arr[i] = 0; b -= 1; a = 0; } if (b == 1 && a == 1) { break;

} }

} Console.WriteLine(“猴子大王:{0}”, arr[i]); Console.ReadLine();

    原文作者:约瑟夫环问题
    原文地址: https://blog.csdn.net/PoorKingHot/article/details/79794993
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞