狐狸追兔

山上有10个洞,呈顺时针排列,有一只狐狸从第10号洞开始按第n次跨越n个洞的规则追兔子,可是追了一天也没有抓到兔子,求兔子可能在哪几个洞中?


思路:第一次进1号洞,把bj[0]设为1,第二次进3号洞,把bj[2]也设为1,第三次进6号洞,把bj[5]设为1,第四次10号洞,把bj[9]设为1,第五次5号洞bj[4]=1……直到循环到第100次,得到一个公式:i*(i+1)/2%10   

代码:

#include 
main()
{
	int a[10]={10,1,2,3,4,5,6,7,8,9},i;
	for (i=0;i<100;i++)
	{
		a[i*(i+1)/2%10]=1;
	}
	for (i=0;i<10;i++)
	{
		if (a[i]!=1)
			printf("%d\n",a[i]);
	}

}


你可能感兴趣的:(狐狸追兔)