算法与数据结构实验题 2.3 击鼓传花

1、题目:

2、代码:

#include<stdio.h>
int main()
{
	int n,m;
	scanf("%d%d",&n,&m);
	int i,a[501];
	for(i=0; i<n; i++)
	{
		a[i]=i+1;
	}
	a[0]=0;
	int count=0,counts=0;
	for(i=0;; i++)
	{
		if(i>=n)
		{
			i-=n;
		}
		if(a[i]!=0)
		{
			count++;
		}
		if(count==m)
		{
			counts++;
			if(counts==n-1)
			{
				printf("%d\n",a[i]);
				break;
			}
			else
			{
				a[i]=0;
				count=0;
			}
		}
	}
	return 0;
}
posted @ 2016-10-07 23:48  laixl  阅读(989)  评论(0编辑  收藏  举报