题目1477:怪异的洗牌
程序员文章站
2022-06-08 11:07:09
...
#include<stdio.h>
int main()
{
int i,j,k,n,m,a[1001],s[1001];
while(scanf("%d %d",&n,&m)!=EOF&&n!=0)
{
int y=n/2;
for(i=0;i<n;i++)
a[i]=i+1;
while(m--)
{
scanf("%d",&k);
for(i=0;i<n;i++)
s[(i+n-k)%n]=a[i];
for(i=0;i<n;i++)
a[i]=s[i];
for(i=0,j=y-1;i<j;j--,i++)
{
int tmp=a[i];
a[i]=a[j];
a[j]=tmp;
}
}
for(i=0;i<n;i++)
{
printf("%d ",a[i]);
}
printf("\n");
}
return 0;
}
/**************************************************************
Problem: 1477
User: cust123
Language: C++
Result: Accepted
Time:10 ms
Memory:1020 kb
****************************************************************/
下一篇: 深入apache host的配置详解
推荐阅读