#include <stdio.h>

int findWinner(int n, int m) { int i; int winner = 0; // 初始大王为0号猴子 for (i = 2; i <= n; i++) { winner = (winner + m) % i; // 更新大王的位置 } return winner + 1; // 大王的号码从1开始 }

int main() { int n, m; printf('输入n和m:'); scanf('%d%d', &n, &m); int king = findWinner(n, m); printf('大王的号码为:%d\n', king);

return 0;

}

猴子选大王算法 C语言实现 - 循环法求解

原文地址: https://www.cveoy.top/t/topic/Q11 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录