先展示用数学的通项公式递推求解 (fun(n-1,m)+m)%n ">int fun(int n,int m) { if(n==1) return 0; else return (fun(n-1,m)+m)%n; } int main(){ int n,m,k; scanf("%d%d%d",&n,&k,&m); printf("%d",(fun(n,m)+k)%n); } 这样子看起来简单但是很难理解,推导起来很复杂,但是可以记一下。 接下来展示用数组这种易于理解的解法 对于求解这道题可以定义一个数组用来存放约瑟夫环内的各元素,并且这里要将数组内个元素初始化为0。 ...