View Code of Problem 80

#include<stdio.h>
#include<stdlib.h>
int main()
{
	
	int n;
	int *a;
	a=(int *)malloc(sizeof(int)*1000000);
	int i;
	int flag;
	int p;
	while(scanf("%d",&n)!=EOF)
	{
		if(n==0)
			break;
		flag=n;
		p=0;
		for(i=1;i<=n;i++)
			a[i]=i;
		for(i=1;;i++)
		{
			if(i==n+1)
				i=1;
			if(a[i]!=0)
				p++;
			else
				continue;
			if(p%3==0)
			{
				a[i]=0;
				p=0;
				flag--;
			}
				
			if(flag==1)
				break;	
		}
		for(i=1;i<=n;i++)
			if(a[i]!=0)
				printf("%d\n",a[i]);	
	}
		
	return 0;
}

Double click to view unformatted code.


Back to problem 80