是一个题!请大家讲下思路或者讲解代码!!谢谢。
有一只狡猾的老鼠,在一个环形的田埂上挖了n个老鼠洞,这些洞也是连接为一个环状,我们要用泥土填满这些鼠洞,老鼠从第0号洞开始出现(第0号洞不填),然后依次按每间隔m个洞出现一次。我们要跟在老鼠后面,当老鼠出现后填补上刚刚出现的洞。我们需要计算出老鼠最后出现那个洞(即剩下最后一个洞没有被我们填上时,这个洞的序号)。Input
输入的第一行为了两个整数n(n<=300000)、m,n表示一共有n个老鼠洞,m表示老鼠每隔m个洞出现。
Output
输出老鼠最后出现的那个洞的序号。
Sample Input 5 2
Sample Output 3
Hint填洞顺序:2,4,1,0
(我是想不到思路,于是求人家的代码看看啊!但是百度到了的又没解释,所以请大家说说思路或者讲下下面的代码谢谢!!(思路的话我开始时想i循环当i==m时,就赋值i=0再次循环。但对于n对应的元素的去除我是无法办到)}
#include<stdio.h>
int main()
{
int a,b,c=0;
scanf("%d%d",&a,&b);
for(int i=2;i<=a;i++)
{
c=(c+b)%i;
}
printf("%d\n",c+1);
return 0;
}(这是代码谢谢!!!)