【待解决】奇怪的算法——解决“淘汰第三名”的问题

题目:有n个人围成一圈,顺序排号,从第一个开始报数(从1到3报数),凡报到3的人退出圈子,问最后最后留下的是原来第几号的那位.

#include <stdio.h> 
#define M 3 
int main() 
{
    
     
    int n=30, s = 0; 
    //scanf("%d", &n); 
    for (int i = 2; i <= n; ++i) 
        s = (s+M)%i; 
    printf("%d\n", s+1); 
    return 0; 
}

猜你喜欢

转载自blog.csdn.net/weixin_43888800/article/details/112305586