Cod sursa(job #490844)

Utilizator udrescu_cristiUdrescu Cristian udrescu_cristi Data 8 octombrie 2010 13:47:16
Problema Order Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.51 kb
#include<stdio.h>

#define nmax 30001

short int n,i,k,a[nmax],poz,k1;

 void refac(int k)
{
	if(k==0)
	{
	 printf("%d ",a[n]);
		n--;
		poz=0;
	}
	else
	{
  printf("%d ",a[k]);
	for(int i=k;i<n;i++)
 		a[i]=a[i+1];
	n--;
	poz--;
	}
 }	

 int main()
{
	freopen("order.in","r",stdin);
	freopen("order.out","w",stdout);
	
	scanf("%d\n",&n);
	for(i=1;i<=n;i++)
		a[i]=i;
	
	poz=1;
	k1=0;
 while(n>1)
 {
	k1++;
	poz=(poz+k1)%n;
	refac(poz);
 }
 printf("%d ",a[1]);
 
 return 0;
 }