对刚

题解:水题,毕竟连我这么个大蒟蒻都做出来了。orz。

 

#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
#define N 100005
using namespace std;
struct data
{
    int from,to,q;
}k,num[N];
int n,t,cnt;
int main ()
{
    scanf ("%d%d",&n,&t);
    for (int i=1;i<=n;i++)
    {
        if (i==1)
        {
            num[i].from=n;
            num[i].to=i+1;
        }
        else if (i==n)
        {
            num[i].from=n-1;
            num[i].to=1;
        }
        else 
        {
            num[i].from=i-1;
            num[i].to=i+1;
        }
    }
    int x=1;
    while (num[x].from!=x&&num[x].to!=x)
    {
        cnt++;
        if (cnt==t)
        {
            num[num[x].from].to=num[x].to;
            num[num[x].to].from=num[x].from;
            cnt=0;
        }
        x=num[x].to;
    }
    printf ("%d",x);
    return 0;
}
View Code

 

 

posted @ 2016-10-05 21:14  外婆桥  阅读(121)  评论(0编辑  收藏  举报