题目1477:怪异的洗牌

来源:互联网 发布:飞控科技软件下载 编辑:程序博客网 时间:2024/06/13 23:19
#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****************************************************************/

0 0
原创粉丝点击