请各位用C++解答,没有思路

有n人围成一圈,顺序排号。

从第1个人开始报数(从1到m报数),凡报到m的人退出圈子,下一个留在圈子里的人接着从1开始报数,问最后留下的是原来的第几号的那位。

如果m==2,那么只能最后留下一个人。但如果m>2怎么能肯定最后留下的是谁?