semeru/Code-Code-CloneDetection-POJ104 huggingface dataset:
int main()
{
	int num[100],m,n,i,j,t;
	cin >>n>>m;
	for (i=0;i<n;i++)
	{
		cin >>num[i];
	}
	for(j=0;j<m;j++)
	{
	
		t=num[n-1];

		for (i=n-1;i>0;i--)
	
		{
		
			num[i]=num[i-1];
	
		}
		num[0]=t;
	}
	for(i=0;i<n-1;i++)
	{
		cout <<num[i]<<" ";
	}
	cout <<num[n-1]<<endl;
	return 0;
}
int main()
{
     int n,m,i,j;
     cin>>n>>m;
     int a[n];
     for (i=0;i<n;i++)
          cin>>a[i]; 
     int *p=a,*q=&a[n-m],*t=NULL;
     for (t=q;t<q+m;t++)
         cout<<*t<<' ';
     for (t=p;t<p+n-m-1;t++)
         cout<<*t<<' ';
     cout<<*t<<endl;
     return 0;
}
void main()
{
	int n,m,i,j,t,s;
	int a[100];
	scanf("%d %d",&n,&m);
	for(i=0;i<n;i++)
		scanf("%d",&a[i]);
	for(i=0;i<m;i++)
	{
		t=a[0];
	for(j=1;j<n;j++)
	{ 
		s=a[j];
		a[j]=t;
		t=s;
	}
	a[0]=t;
	}
printf("%d",a[0]);
for(i=1;i<n;i++)
printf(" %d",a[i]);

}
void main()
{
	int a[200],n,m,i;
	int *p;
	scanf("%d %d",&n,&m);
	for(i=0;i<n;i++)
	{scanf("%d",&a[i]);}
	for(i=n;i<=n+n-m;i++)
	{*(a+i)=*(a+i-n);}
	p=a+n-m;
	printf("%d",*p);
	for(i=0,p++;i<n-1;i++,p++)printf(" %d",*p);
}
void main()
{
	int num[100];
	int i,n,m,temp;
	scanf("%d%d",&n,&m);
	for(i=0;i<n;i++)scanf("%d",&num[i]);
	for(i=0;i<n-m;i++)
	{
		temp=num[i];
		num[i]=num[n+i];
		num[n+i]=temp;
	}
	for(i=0;i<n;i++)num[i]=num[n-m+i];
	printf("%d",num[0]);
	for(i=1;i<n;i++)printf(" %d",num[i]);
}
int main()
{
	int a[200];
	int n,m,i;
	scanf("%d %d",&n,&m);
	for(i=0;i<n;i++)
	{
		scanf("%d",&a[i]);
	}
	for(i=0;i<n-m;i++)
	{
		a[n+i]=a[i];
	}
	for(i=0;i<n-1;i++)
	{
		printf("%d ",a[n-m+i]);
	}
	printf("%d",a[n-m+i]);
}
void main()
{
	int *a,i,n,j,m;
	scanf("%d %d",&n,&m);
         a=(int *)malloc((n+1)*sizeof(int));
	for(i=1;i<=n;i++)
		scanf("%d",a+i);
	for(i=1;i<=m;i++)
	{
		*(a+0)=*(a+n);
		for(j=n;j>0;j--)
			*(a+j)=*(a+j-1);
	}
	for(i=1;i<n;i++)
		printf("%d ",*(a+i));
	printf("%d",*(a+i));
}
int main(){
	int n,m;
	cin>>n>>m;
	int a[100];
	int *p=a;
	for(;p<=a+n-1;p++)
		cin>>*p;
	for(p=a+n-1;p>=a;p--)
		*(p+m)=*p;
	for(p=a+n;p<=a+n+m-1;p++)
		*(p-n)=*p;
	p=a;
	cout<<*p++;
	for(;p<=a+n-1;p++)
		cout<<" "<<*p;
}
int main()
{
     int m,n,i;
     scanf("%d%d",&n,&m);
	 int *pi;
     pi=(int*)malloc(sizeof(int)*(2*n-m));
	 for (i=0;i<n;i++)
	 {
		 scanf("%d",pi+i);
	 }
     for (i=0;i<n-m;i++)
	 {
		 *(pi+i+n)=pi[i];
	 }
	 printf("%d",pi[n-m]);
	 for(i=n-m+1;i<2*n-m;i++)
	 {
		 printf(" %d",pi[i]);
	 }
	 free (pi);
	return 0;
}
//***************?????????****************
//***************???????********************
//***************?????2012?12?6?***********
//***************???1200062701*****************

int main()
{
	int a, b, x;
	cin >> a >> b;
	x = a;
	int n[199] = {-1}, *p = n;
	for(int i = b; i < a + b; i++)
	{
		cin >> *(p + i);
	}
	for(int j = a; j < a + b; j++)
	{
		int s;
		s = *(p + j - a);
		*(p + j - a) = *(p + j);
		*(p + j) = s;
	}
	for(int k = 0; k < a; k++)
	{
		if(*(p + k) != -1)
		{
			cout << *(p + k);
			x--;
			if(x > 0)
			{
				cout << " ";
			}
		}
	}
	return 0;
}
void main()
{
	int a[100],n,m,t,i,j;
	scanf("%d%d",&n,&m);
	for(i=0;i<n;i++)
		scanf("%d",&a[i]);
	for(i=n-m;i<n;i++)
	{
		t=a[i];
		for(j=i;j>=i-n+m+1;j--)
			a[j]=a[j-1];
		a[i-n+m]=t;
	}
	for(i=0;i<n-1;i++)
		printf("%d ",a[i]);
	printf("%d",a[n-1]);
}
int main(int argc, char* argv[])
{
	int n,m,i,j,k;
	scanf("%d %d",&n,&m);
	int *p,*D;
	p=(int *)malloc(sizeof(int) * n);
	D=(int *)malloc(sizeof(int) * n);
	for(i=0;i<n;i++)
	{
		scanf("%d",&p[i]);
	}
	
	for(j=0;j<n;j++)
	{
		if(j<=(m-1))
			D[j]=p[n-m+j];
		if(j>(m-1))
			D[j]=p[j-m];
	}
	
	
	for(k=0;k<n;k++)
	{
		if(k<(n-1))
		printf("%d ",D[k]);
		else
			printf("%d",D[k]);

	}
	
	return 0;
}
void main()
{
	int n,m,huan,i;

	int *p,*t;
	scanf("%d %d",&n,&m);
    if((t=(int *)malloc((2*n-m)*sizeof(int)))==NULL)
	{
		printf("No space avaible!");
		
	}
	for (p=t;p<t+n;p++)
	{
		scanf("%d",p);
	}
	for (i=0;i<n-m;i++)
	{
		
		t[n+i]=t[i];
	}
	for (p=t+n-m;p<t+(2*n-m-1);p++)
		printf("%d ",*p);
	printf("%d",*p);
}
main()
{
int *p,m,n,i,a[200]={0};
scanf("%d%d",&n,&m);
for(i=0;i<n;i++)
	scanf("%d",&a[i]);
p=a;
for(p=a+n+m-1;p>=a;p--)
	*p=*(p-m);
for(p=a;p<a+m;p++)
	*p=*(p+n);
for(p=a;p<a+n-1;p++)
	printf("%d ",*p);
printf("%d",*p);
}
void play(int n[],int l);

int main()
{
	int n,m,i;
	int num[100];
	scanf("%d%d",&n,&m);
	for(i=0;i<n;i++)
		scanf("%d",&num[i]);
	for(i=1;i<=m;i++)
	    play(num,n);
	for(i=0;i<n;i++)
	{
		if(i!=0)
			printf(" ");
		printf("%d",num[i]);
	}
	printf("\n");
	return 0;
}

void play(int n[],int l)
{
	int k,t;
	t=n[l-1];
	for(k=l-1;k>0;k--)
		n[k]=n[k-1];
	n[0]=t;
}
int main()
{
	int n,m;
	int a[100];
	int i,j,k;
	int temp;

	scanf("%d %d",&n,&m);
    for(i=0;i<n;i++)
	    scanf("%d",a+i);
	for(j=n-m;j<n;j++)
		for(k=0;k<n-m;k++)
		{
			temp=*(a+j-k);
			*(a+j-k)=*(a+j-1-k);
			*(a+j-1-k)=temp;
		}
	for(i=0;i<n;i++)
		printf("%d%c",*(a+i),(i==n-1)?'\n':' ');
	return 0;
}
int main()
{
	int a[100],n ,m ,i;
	int *p=a;
	scanf("%d %d",&n, &m);
	for(i=0;i<=n-1;i++)
	{
		scanf("%d",&a[i]);
	}
	printf("%d",a[n-m]);
	for(p=&a[n-m]+1;p<=&a[n-1];p++)
	{
		printf(" %d",*p);
	}
	for(p=a;p<=a+n-m-1;p++)
	{
		printf(" %d",*p);
	}
	return 0;
}
int main()
{
	int *p,a[100],i,m,n;
	scanf("%d %d",&n,&m);
	p=a+m;
	for(i=0;i<n-m;i++)
	{
		scanf("%d\t",p++);
	}
	p=a;
	for(i=0;i<m;i++)
	{
		scanf("%d\t",p++);
	}
	p=a;
	printf("\n");
	for(i=0;i<n;i++)
	{
           if(i!=n-1)
            {
		printf("%d ",a[i]);}
           if(i==n-1)
            {
		printf("%d",a[i]);}
	}
}
void convert(int n,int a[30])
{
 int i,t;
 for(i=n;i>1;i--)
 {
  t=a[i];
     a[i]=a[i-1];
     a[i-1]=t;
 }
}
void main()
{
 int m,n,i,j,a[30];
 scanf("%d %d",&m,&n);
 for(i=1;i<=m;i++)
  scanf("%d",&a[i]);
 for(j=0;j<n;j++)
  convert(m,a);
 for(i=1;i<=m;i++)
	 if(i==m)
		 printf("%d",a[i]);
	 else
  printf("%d ",a[i]);
}
void main()
{
   int m,n,i,a[100],b[100];
   scanf("%d%d",&n,&m);
   for(i=0;i<n;i++)
   {
      scanf("%d",&a[i]);
   }
   for(i=0;i<n-m;i++)
   {
      b[i+m]=a[i];
   }
   for(i=n-m;i<n;i++)
   {
      b[i-n+m]=a[i];
   }
   for(i=0;i<n-1;i++)
   {
      printf("%d ",b[i]);
   }
   printf("%d\n",b[n-1]);
}
int main()
{
	int *p,i,a[100],n,m;
	p=a;
	scanf("%d %d",&n,&m);
	for(i=0;i<n;i++)scanf("%d",p++);
	for(i=0,p=a+n-m;i<m;i++,p++)printf("%d ",*p);
	for(i=0,p=a;i<n-m-1;i++,p++)printf("%d ",*p);
	printf("%d",*p);
}
int main()
{
	int n,m,i,j,sz[102];
	scanf("%d%d",&n,&m);
	for(i=1;i<n+1;i++)
	{
		scanf("%d",&sz[i]);
        sz[0]=0;
		sz[n+1]=0;
	}
	for(j=0;j<m;j++)
	{
		for(i=n+1;i>0;i--)
		{
			sz[i]=sz[i-1];
		}
			sz[1]=sz[n+1];
	}
	for(i=1;i<n;i++)
		printf("%d ",sz[i]);
	printf("%d",sz[n]);
	return 0;
}
void main()
{
	int n,m,i,j,a[201];
	scanf("%d%d",&n,&m);
	for(i=0;i<n;i++)
	{
		scanf("%d",&a[i]);
	}
	for(i=0;i<n;i++)
	{
		if (i>=m && i<n)
		{
			a[i+n]=*(a+i-m);
		}
		else a[i+n]=*(a+i+n-m);
	}
	for(i=0;i<n;i++)
	{
		if (i!=0)
		printf(" %d",a[i+n]);
		else printf("%d",a[i+n]);
	}
}
int main(){
	int m,n,i,j=0,k,t,q[100];
	int *p=q;
	cin>>n>>m;
	for(i=0;i<n;i++){
		cin>>q[i];
	}
	for(i=0;i<m;i++){
	j=0;
	    k=*p;
		while(j<n-1){
			t=*(p+j+1);
			*(p+j+1)=k;
			k=t;
			j++;
		}
		*p=k;
	}
	cout<<*p;
    for(i=1;i<n;i++){
	cout<<" "<<*(p+i);
	}
	return 0;
}
void main()
{
	int n,m,i,j,a[101];
	scanf("%d%d",&n,&m); 
	for(i=0;i<n;i++)
	scanf("%d",&a[i]);
	i=0;
	while(i!=m)
	{
		for (j=n;j>0;j--)
		{
			a[j]=a[j-1];
		}
		a[0]=a[n];
		i++;
	}
	for(i=0;i<n-1;i++)
	printf("%d ",a[i]);
	printf("%d",a[n-1]);
}
void *malloc(unsigned int size);
void main()
{
	int m,n,*p,*a,i=0;
	a = (int *)malloc(200*sizeof(int));
	scanf("%d%d",&n,&m);
	while(i<n)scanf("%d",a+(i++));
	p=a+n,i=0;
	while(i<n-m)*(p+i++)=*(a+i);
	p=a+n-m;
	for(i=0;i<n;i++)
	{
		if(i>0)printf(" ");
		printf("%d",*(p+i));
	}
}
int move(int *p,int x)
{
    int i;
    int temp;
    temp=*(p+x-1);
    for(i=x-1;i>0;i--)
    {
        *(p+i)=*(p+i-1);
    }
    *p=temp;
}
int main()
{
    int a[100]={0};
    int n,m;
    int i;
    scanf("%d %d",&n,&m);
    for(i=0;i<n;i++)scanf("%d",a+i);
    while(m--)
    move(a,n);
    for(i=0;i<n-1;i++)printf("%d ",*(a+i));
    printf("%d",*(a+i));

}
int main()
{
  int i,j,x[100],n,m;
  void px(int n,int array[100]);
  scanf("%d%d",&n,&m);
  for(i=0;i<n;i++)
    scanf("%d",&x[i]);
  for(i=1;i<=m;i++)
    px(n-1,x);
  printf("%d",x[0]);
  for(i=1;i<n;i++)
   printf(" %d",x[i]);
  
  return 0;
}

void px(int n,int array[100])
{
 int t,i;
 t=array[n];
 for(i=n-1;i>=0;i--)
   array[i+1]=array[i];
 array[0]=t;
}
/*
 *???round.cpp
 *???????
 *??: 2012-12-12
 *?????1200012825
 */

int main(){
	int n,m;
	cin>>n>>m;
	int *p=NULL,a[300];
	for(p=a;p<a+n;p++){
		cin>>*p;//????
	}
	for(p=a;p<a+n-m;p++){
		*(p+n)=*p;
	}
	for(p=a;p<a+n;p++){
		*p=*(p+n-m);//????
	}
	cout<<*a;
	for(p=a+1;p<a+n;p++){
		cout<<" "<<*p;//??
	}
	cout<<endl;
	return 0;
}
int main()
{
	int a[100],n,m,i,b[100];
	cin>>n>>m;
	for(i=0;i<n;i++)
		cin>>a[i];
	for(i=0;i<n-m;i++)
		b[m+i]=a[i];
	for(i=n-m;i<n;i++)
		b[i-n+m]=a[i];
	for(i=0;i<n;i++)
	{
		if(i==n-1)
			cout<<b[i]<<endl;
		else
		cout<<b[i]<<" ";
	}
	return 0;
}
int main(int argc, char *argv[])
{
    int m,n;       int i,j,k;
    cin >> m >> n;
    int ary[m];
    for(i=0; i<m; i++){
             cin >> ary[i];
    }
    for(j=1; j<=n; j++){
             int temp;
             temp= ary[m-1];
             for(k= m-1; k>0; k--){
                      ary[k] =ary[k-1];
             }
             ary[0] = temp;
    }
    for(i=0; i<m; i++){
             cout << ary[i];
             if(i!=m-1)
             {         cout << " ";}
    }
             
   
    return EXIT_SUCCESS;
}
void swap(int *p,int *q)//???????
{
	int *temp=p;
	p=q;
	q=temp;
	return;
}
int main()
{
	int m,n,a[100],temper=0;//????
	cin>>n>>m;//??
	for(int i=0;i<n;i++)
		cin>>a[i];
	int s=m;
	while(m>0)//??????
	{
		swap(a[n-m],temper);
		for(int j=n-m;j>s-m;j--)
			swap(a[j],a[j-1]);
		swap(a[s-m],temper);
		m--;
	}
	for(int i=0;i<n-1;i++)//??
		cout<<a[i]<<" ";
	cout<<a[n-1]<<endl;
	return 0;
}
int main()
{
	int n,m,t;
	cin>>n>>m;
	int a[n];
	for(int i=0;i<n;i++)
	{
		cin>>a[i];
	}
	for(int j=n-m;j<n;j++)
	{
		t=a[j];
		for(int l=j;l>j+m-n;l-=1)
		{
			a[l]=a[l-1];
		}
		a[j-n+m]=t;
	}
	for(int k=0;k<n-1;k++)
	{
		cout<<a[k]<<" ";
	}
	cout<<a[n-1];
}
void main()
{
	int i,j,n,m,t,a[100],*p;
	p=a;
	scanf("%d %d",&n,&m);
	for(i=0;i<n;i++)
		scanf("%d",&a[i]);
	for(j=0;j<m;j++)
	{
		t=a[0];
		a[0]=a[n-1];
		for(i=0;i<n-2;i++)
		{
			a[n-1-i]=a[n-2-i];
		}
		a[1]=t;

	}
	for(i=0;i<n;i++)
	{
		printf("%d",a[i]);
		if(i<n-1) printf(" ");
	}
}
int main()
{
	int m,n,*q,i,a[101],j,k,l;
	cin>>n>>m;
	for(i=0;i<n;i++)
		cin>>a[i];
	q=a;           //??????????????
	for(i=0;i<n-m;i++)
		*(q+n+i)=*(q+i);   //???????????????????
	for(i=0;i<n-1;i++)
		cout<<*(q+n-m+i)<<' ';  //????????????????
	cout<<*(q+n+n-m-1)<<endl;

     
	return 0;
}
void main()
{
	int a[100],*p=&a[0],i,n,m;
	scanf("%d%d",&n,&m);
	for(i=0;i<n;i++)
		scanf("%d",&a[i]);
	for(i=n-m;i<n;i++)
		printf("%d ",*(p+i));
	for(i=0;i<n-m;i++)
	{
		printf("%d",*(p+i));
		if(i!=n-m-1)
			printf(" ");
	}
	printf("\n");
}
void xunhuan(int a[100],int n,int m)
{
	int i,j,t,temp;
	for(j=0;j<m;j++)
	{
		temp=a[0];
		a[0]=a[n-1];
		for(i=0;i<n-1;i++)
		{
			t=a[i+1];
			a[i+1]=temp;
			temp=t;
		}
	}
}
int main()
{
	int a[100],n,m,i;
	scanf("%d%d",&n,&m);
	for(i=0;i<n;i++)
	{
		scanf("%d",&a[i]);
	}
	xunhuan(a,n,m);
	printf("%d",a[0]);
	for(i=1;i<n;i++)
	{
		printf(" %d",a[i]);
	}
}
int main()
{
    int n,m,i,k;
    scanf("%d%d",&n,&m);
    int a[100];
    for(i=1;i<=n;i++)
    {
		scanf("%d",&a[i]);
    }
    int *num=a;
    for(i=n-m+1;i<=n;i++)
    {
		k=*(num+i);
		printf("%d",k);
		printf(" ");
    }
    for(i=1;i<=n-m-1;i++)
    {
		k=*(num+i);
		printf("%d",k);
		printf(" ");
    }
    printf("%d",a[n-m]);
    return 0;
}
int pai(int a[],int n,int k);
int main()
{
	int n,i,k;
	int a[100];
	scanf("%d%d",&n,&k);
	for(i=0;i<=(n-1);i++)
	{
		scanf("%d",&a[i]);
	}
	pai(a,n,k);
	for(i=0;i<=(n-1);i++)
	{
		if(i==0)
			printf("%d",a[0]);
		else
		printf(" %d",a[i]);
	}
}
int pai(int a[],int n,int k)
{
	int i;
	int b[100]={0};
	for(i=0;i<=(n-1);i++)
	{
		if(i<=(n-1-k))
		{
			b[i+k]=a[i];
		}
		else
		{
			b[i+k-n]=a[i];
		}
	}
	for(i=0;i<=(n-1);i++)
	{
		a[i]=b[i];
	}
	//return a[n];
}
void main()
{
	int n,k,*p,i,*p1;
	int a[100];
	scanf("%d%d",&n,&k);
	for(i=0;i<100;i++)
		a[i]=-1;
	for(i=0;i<n;i++)
		scanf("%d",&a[i]);
	p1=a+n-k;
	for(p=p1;*p!=-1;p++)
		printf("%d ",*p);
	for(p=a;p!=p1;p++)
	{
		printf("%d",*p);
		if((p+1)!=p1)
			printf(" ");
	}
}
void main()
{
	int m,n;
	int num[100];
	int temp;
	int i,k,j;

	scanf("%d %d",&n,&m);
	for (i=0;i<n;i++)
		scanf("%d",&num[i]);
	for (i=0,k=1;k<=m;i++,k++)
	{
		temp=num[i];
		num[i]=num[n-m+k-1];
		for (j=0;j<n-m;j++)
		{
			num[n-m+k-1-j]=num[n-m+k-1-j-1];
		}
		num[i+1]=temp;
	}
	for (i=0;i<n;i++)
	{
		if (i!=0)
			printf(" %d",num[i]);
		else if (i==0)
			printf("%d",num[i]);
	}
}
int main(int argc, char* argv[])
{
 int n,m,i;
 int a[100];
 scanf("%d %d",&n,&m);
  for (i=1;i<=n;i++)
	
  { scanf("%d",&a[i]);}
	int *x;
	x=&a[n];
	for(i=1;i<=n;i++){
	x++;
	*x=a[i];
	}
  printf("%d",a[n-m+1]);
  for(i=n-m+2;i<=2*n-m;i++){
  printf(" %d",a[i]);
  }
	  
	 
	return 0;
}
void main()
{
	int i,m,n;
	int zz[1000];
	cin>>n>>m;
	for(i=m;i<m+n;i++)
		cin>>zz[i];
	for(i=n;i<m+n;i++)
		zz[i-n]=zz[i];
	for(i=0;i<n-1;i++)
		cout<<zz[i]<<" ";
	cout<<zz[n-1]<<endl;

}
int main()
{
	int n,m,a[100],i;
	int temp;
	scanf("%d%d",&n,&m);
	for(i=0;i<n;i++)
	{
		scanf("%d",&a[i]);
	}
	for(i=n;i<100;i++)
	{
		a[i]=0;
	}

	for(i=0;i<n-m;i++)
	{
		temp=a[i];
		a[i]=a[i+n];
		a[i+n]=temp;
	}
	for(i=n-m;i<2*n-m-1;i++)
	{
		printf("%d ",a[i]);
	}
          printf("%d",a[2*n-m-1]);

return 0;
}
int main()
{
    int n,m,temp;
    cin>>n>>m;
    int a[n];
    for(int i=0;i<n;i++)
    {
        cin>>a[i];
    }
    for (int i=0;i<m;i++)
    {
        for (int j=0;j<n-1;j++)
        {
            temp=a[n-1];
            a[n-1]=a[j];
            a[j]=temp;
        }
    }
    for(int i=0;i<n;i++)
    {
            cout<<a[i];
            if(i!=n-1)
            cout<<" ";
    }
}
void main()
{
	int a[100];
	int t[100];
	int n,m,i,j,h;
	scanf("%d %d",&n,&m);
	for(i=0;i<n;i++)
		scanf("%d",&a[i]);
	j=n-m;
	for(i=0;i<m;i++)
	{
		t[i]=a[j];
		j=j+1;
	}
	h=0;
	for(i=m;i<n;i++)
	{
		t[i]=a[h];
		h=h+1;
	}
	for(i=0;i<n-1;i++)
		printf("%d ",t[i]);
	printf("%d",t[n-1]);
}
int main(){
  int n,i,m,sz[100];
  scanf("%d%d",&n,&m);
  for(i=0;i<n;i++){
	  scanf("%d",&sz[i]);
  }
  for(i=n-m;i<n;i++){
  printf("%d",sz[i]);
  printf(" ");
}
  for(i=0;i<n-m-1;i++){
	  printf("%d",sz[i]);
	  printf(" ");
  }
  printf("%d",sz[n-m-1]);
return 0;
}
void main()
{
	int i,m,n,a[100],*p;
	scanf("%d %d",&m,&n);
	for (i=0;i<m;i++)
	{
		scanf("%d",&a[i]);
	}
	p=a;
	for (i=0;i<m-n;i++)
	{
		*(p+m)=*p++;
	}
	p=a+m-n;
	printf("%d",*p);
	for (i=1;i<m;i++)
	{
		printf(" %d",*++p);
	}
}
int main()
{
  int *p;
  int a[100],n,m,i;
  scanf("%d%d",&n,&m);
  for(i=1;i<=n;i++)   scanf("%d",&a[i]);
  p=&a[1+n-m];
  printf("%d",*p);
  p=&a[2+n-m];
  for(i=0;i<=m-2;i++)  
  printf(" %d",p[i]);
  p=&a[1]; 
  for(i=0;i<=n-m-1;i++) 
  printf(" %d",p[i]);
  return 0;
}
int main(int argc, char* argv[])
{
	int n,m,i,j,t,r,l;
	int num[100];
	scanf("%d""%d",&n,&m);
	for(i=0;i<n;i++)
	{
		scanf("%d",&num[i]);
	}
	for(j=0;j<m;j++)
	{
		t=num[n-1];
		for(r=n-2;r>=0;r--)
		{
			num[r+1]=num[r];
		}
		num[0]=t;
	}
	for(l=0;l<n;l++)
	{
              if(l>0)
{
	 	printf(" %d",num[l]);
}
else
{printf("%d",num[l]);}
	}

    return 0;
}
int main()
{
    int n,m,A[200],i,p,q;
    scanf("%d%d",&n,&m);
    for(i=1;i<=n;i++)
    {
     scanf("%d",&A[i]);
}
    for(p=1;p<=(n-m);p++)
	{
	   A[n+p]=A[p];
	}
	for(q=(n-m+1);q<(n+n-m);q++)
	{
	printf("%d ",A[q]);
	}
	printf("%d",A[n+n-m]);
   return 0;
}
void change(int n,int m,int *p)
{
	int i,j,q;
	for(i=0;i<m;i++)
	{
		q=*(p+n-1);
		for(j=n-1;j>0;j--) *(p+j)=*(p+j-1);
		*p=q;
	}
}
void main()
{
	int n,m,*p,i,q=0;
	scanf("%d%d",&n,&m);
	p=(int *)malloc(sizeof(int)*n);
	for(i=0;i<n;i++) scanf("%d",p+i);
	change(n,m,p);
	for(i=0;i<n-1;i++) printf("%d ",*(p+i));
	printf("%d\n",*(p+i));
}
void mov(int a[],int n,int m)
{
	int i,j,temp;
	for(j=1;j<=m;j++)
    {
		temp=a[n-1];
		for(i=n-1;i>0;i--)
		{
			a[i]=a[i-1];
		}
		a[0]=temp;
	}
	for(i=0;i<n;i++)
	{
		if(i!=n-1)
		{
			printf("%d ",a[i]);
		}
		if(i==n-1)
        {
			printf("%d",a[i]);
		}
	}
}
void main()
{
	int a[100],m,n,i;
	scanf("%d%d",&n,&m);
	for(i=0;i<n;i++)
	{
		scanf("%d",&a[i]);
	}
	mov(a,n,m);
}
main()
{
int n,m,a[100],i;
scanf("%d %d\n",&n,&m);
for(i=0;i<n;i++)
scanf("%d ",&a[i]);
for(i=(n-m);i<n;i++)
printf("%d ",a[i]);
for(i=0;i<(n-m-1);i++)
printf("%d ",a[i]);
if(i=(n-m-1)) printf("%d",a[i]);
}
//********************************
//*????                **
//*?????? 1200012784 **
//*???2012.12.4         **
//********************************

void move(int *, int, int);                      //????????????????move

int main()
{	
	int n, m, num[100];                          //??????n?????m???num
	cin >> n >> m;                               //??
	for (int i = 0; i < n; i++)
		cin >> num[i];
	move(num, n, m);                             //??????
	cout << num[0];                              //??
	for (int i = 1; i < n; i++)
		cout << ' ' << num[i];
	return 0;
}

void move(int *num, int n, int m)                //?????????
{
	int i = 0;                                   //i??????num??i?????num[0]??
	int key = *(num + i);                        //???????????
	while (i != m)                               //???????????i?????????
	{
		if (i < m)                               //?????m?
		{
			*(num + i) = *(num + i + n - m);     //????i + n + m??
			i = i + n - m;                       //??????????i + n + m??
		}
		else                                     //??????
		{
			*(num + i) = *(num + i - m);         //????i - m??
			i = i - m;                           //???????i - m??
		}
	}
	*(num + i) = key;                            //??i?????m?????????????num[0]???num[m]
}
//???2010?12?8?

//??: 1000010586_???

//???????

int main()
{
	int n , m , i , j , flag;
	int a[ 100 ];
	int *p;
	cin >> n >> m;
	for ( i = 0 ; i <= n - 1 ; i++ )
		cin >> a[ i ];
	p = a;
	for ( i = 1 ; i <= n - m ; i++ )
	{
		flag = *p;
		for( j = 0 ; j <= n - 2 ; j++ )
			*( p + j ) = *( p + j + 1 );
		*( p + n - 1 ) = flag;
	}
	for ( i = 0 ; i <= n - 2 ; i++ )
		cout << *( p + i ) << " ";
	cout << *( p + n - 1 );
	return 0;
}
void change(int n,int a[])
{
	int i;
	for(i=n-1;i>=1;i--)
	{
		a[i-1]=a[i-1]+a[i];
		a[i]=a[i-1]-a[i];
		a[i-1]=a[i-1]-a[i];
	}
}

void main(void)
{
	int m,n,a[100];
	scanf("%d %d",&n,&m);

	int i;
	for(i=0;i<=n-1;i++)
		scanf("%d",&a[i]);

	for(i=1;i<=m;i++)
		change(n,a);

	for(i=0;i<=n-2;i++)
		printf("%d ",a[i]);
	printf("%d\n",a[n-1]);
}
void move(int a[], int n)
{
	int t=a[n-1],i;
	for(i=n-1;i>0;i--)
		a[i]=a[i-1];
	a[0]=t;
}

void main()
{
	int n,m,i,a[100];
	scanf("%d%d",&n,&m);
	for(i=0;i<n;++i)
		scanf("%d",&a[i]);
	for(i=0;i<m;++i)
		move(a,n);
	printf("%d",a[0]);
	for(i=1;i<n;++i)
		printf(" %d",a[i]);
}
int main(int argc, char* argv[])
{
	int m,n,i,j,p[100],t;
	scanf("%d%d",&n,&m);
	for (i=0;i<n;i++){
		scanf("%d",&p[i]);}
	for (i=n-1;i>=0;i--){
       p[i+m]=p[i];
	   }
	for (j=n-1+m;j>=n;j--){
		p[j-n]=p[j];
	}
	printf("%d",p[0]);
	for (t=1;t<n;t++){
		printf(" %d",p[t]);
	}
	return 0;
}
int main()
{
    int *dt;
	int n,m;
	int j,i;
	scanf("%d%d",&n,&m);
	dt=(int *)malloc(sizeof(int)*n);
	for(i=0;i<(n-m);i++)
	{*(dt+i+m)=0;
		scanf("%d",&j);
	*(dt+i+m)=j;}
	for(i=(n-m);i<n;i++)
	{*(dt+i-n+m)=0;
		scanf("%d",&j);
	*(dt+i-n+m)=j;}
	printf("%d",dt[0]);
	for(i=1;i<n;i++)
	{printf(" %d",dt[i]);}
    free(dt);

	return 0;
}
int main()
{
	int a[200]={0},n,m,i;
	cin>>n>>m;
	for(i=0;i<n;i++)
	{
		cin>>a[i];
	}
	for(i=n-1;i>=0;i--)
	{
		a[i+m]=a[i];
	}
	for(i=n;i<n+m;i++)
	{
		a[i-n]=a[i];
	}
	cout<<a[0];
	for(i=1;i<n;i++)
	{
		cout<<" "<<a[i];
	}
	cout<<endl;
	return 0;
}
/******************************************
?? ???1300017667
?? 20131211
?? ??????
******************************************/
int len, step;										//????????????????
int num[102];										//??????????
void move(int *p, int n);							//???????
int main()
{
	memset(num, 0, sizeof(num));					//????
	cin >> len >> step;								//????????????
	int i;
	for(i = 0; i <= len - 1; i ++)					//???????
		cin >> *(num + i);
	move(num, step);								//??
	for(i = 0; i <= len - 1; i ++)					//?????????
	{
		if(i != 0)
			cout << " ";
		cout << *(num + i);
	}
	return 0;
}
void move(int *p, int n)							//?????p??????????n??????
{
	if(n == 0)										//??0????????????	
		return;
	int temp = *(p + len - 1);						//???????????
	int i;
	for(i = len - 1; i >= 1; i --)
		*(p + i) = *(p + i - 1);					//???????????????????????????????
	*p = temp;										//???????????
	move(p, n - 1);									//????????????n - 1?????
}
int main()
{
	int n,m,chu[100],mu[100],i,j;
	scanf("%d%d",&n,&m);
	for(i=0;i<n;i++)
	{
		scanf("%d",&chu[i]);
	}
	for(j=0;j<m;j++)
	{
		mu[j]=chu[j+n-m];
		if(j==0)
		{
			printf("%d",mu[j]);
		}
		else
		{
			printf(" %d",mu[j]);
		}
	}
	for(j=m;j<n;j++)
	{
		mu[j]=chu[j-m];
		printf(" %d",mu[j]);
	}
	return 0;
}
void move(int *pstart,int n,int m)
{
	int lastnum;
	int *pmove;
	void (*pinfunction)(int *,int,int);           //actually,it seems that it's useless.....
	pinfunction=move;
	if (m>0)
	{
		lastnum=*(pstart+n-1);
		for (pmove=pstart+n-2;pmove>=pstart;pmove--) *(pmove+1)=*pmove;
		*pstart=lastnum;
		(*pinfunction)(pstart,n,m-1);
	}
}
void main()
{
	int flag,i,n,m;
	int num[100];
	int *pnum;
	void (*pinfunction)(int *,int,int);					//actually,it seems that it's useless.....
	pnum=num;
	scanf("%d",&n);
	scanf("%d",&m);
	for (i=0;i<=n-1;i++) scanf("%d",pnum++);
	pnum=num;
	pinfunction=move;
	(*pinfunction)(pnum,n,m);
	flag=0;
	for (i=0;i<=n-1;i++)
	{
		if (flag) printf(" ");
		else flag=1;
		printf("%d",*pnum++);
	}
}
int main()
{
int a[100];
int n,m,i,j,s,t,q,b,c,d;
scanf("%d%d",&n,&m);
for(i=0;i<=n-1;i++)
scanf("%d",&a[i]);
for(j=0;j<=(n-m-1)/2;j++)
	{
	b=a[j];
	a[j]=a[n-m-1-j];
	a[n-m-1-j]=b;
	}
for(s=0;s<=(m-1)/2;s++)
	{
	c=a[n-m+s];
	a[n-m+s]=a[n-1-s];
	a[n-1-s]=c;
	}
for(t=0;t<=(n-1)/2;t++)
{
	d=a[t];
	a[t]=a[n-1-t];
	a[n-1-t]=d;
}
printf("%d",a[0]);
for(q=1;q<=n-1;q++)
printf(" %d",a[q]);
return 0;
}
int main()
{
	void order(int p,int q,int r[]);
	int n1,n2,i;
	int a[10000];	
	scanf("%d %d",&n1,&n2);
	for(i=1;i<=n1;i++)
		scanf("%d",&a[i]);
	order(n1,n2,a);
	return 0;
}
void order(int n1,int n2,int a[])
{
	int i;
	for(i=n1-n2+1;i<=n1;i++)
		printf("%d ",a[i]);
	printf("%d",a[1]);
	for(i=2;i<=n1-n2;i++)
		printf(" %d",a[i]);
}
void lunhuan(int b[],int c,int d)
{
	int i,j,t;
	for(i=c-d;i<=c-1;i++)
	{
		for(j=1;j<=c-d;j++)
		{
			t=b[i-j+1];
			b[i-j+1]=b[i-j];
			b[i-j]=t;
		}
	}
}
int main()
{
	int a[101],n,m,i;
	scanf("%d%d",&n,&m);
	for(i=0;i<=n-1;i++)
	{
		scanf("%d",&a[i]);
	}
	lunhuan(a,n,m);
	for(i=0;i<=n-1;i++)
	{
		if (i==0)
			printf("%d",a[i]);
		else
		printf(" %d",a[i]);
	}
	return 0;
}
void move(int a[101], int n, int m)
{
    int *p, end;
    end=*(a+n-1);
    for(p=a+n-1; p>a; p--)
    *p=*(p-1);
    *a=end;
    m--;
    if(m>0)
    move(a, n, m);
}

int main()
{
    int a[101];
    int i, first=1;
    int n, m;
        scanf("%d%d", &n, &m);
    for(i=0; i<n; i++)
        scanf("%d", &a[i]);
    move(a, n, m);
    for(i=0; i<n; i++)
	{
		if(first)
			first=0;
		else printf(" ");
		printf("%d", a[i]);
	}
    printf("\n");
    return 0;
}
int main()
{
	int a[100]={-1},*p,*q,n,m,i,k=0;
	scanf("%d %d\n",&n,&m);
	for(i=0;i<n;i++)
		scanf("%d",&a[i]);
	p=a;
	q=p+n-m+1;
	printf("%d",*(p+n-m));	
	while(k<n-1)
	{
		if(*q==0)q=p;
		printf(" %d",*q);
		k++;
		q++;		
	}
	return 0;
}
/**********************
*????
*?????
***********************/
int main()
{
	int n, m, a[100]={0},b[100]={0};
	cin >> n >> m;
	for(int i=0; i < n; i++)
	{
		cin >> a[i];
	}
	for(int j=0; j < m; j++)
	{
		for(int k=0; k < n; k++)
		{
			if(k > 0)
			{
				b[k]=a[k-1];
			}
			else
			{
				if(k == 0)
				{
					b[k]=a[n-1];
				}
			}
		}
		for(int i2=0; i2 < n; i2++)
		{
			a[i2] = b[i2];
		}
	}
	int mark=0;
	for(int i1=0; i1 < n; i1++)
	{
		if(mark == 0)
		{
			cout<<b[i1];
			mark++;
		}
		else
		{
			cout<<" "<<b[i1];
		}
	}
return 0;
}