参考:百科:约瑟夫问题
经典题。
附ac代码:
#include <stdio.h> int main(){ int t, m, n, f; scanf("%d", &t); while(t-- && scanf("%d%d", &n, &m)){ f = 0; for(int i = 2; i <= n; ++i) f = (f + m) % i; printf("%d\n", f + 1); } return 0; }
原文:http://blog.csdn.net/chang_mu/article/details/19293313