谁能帮忙看一下,三个Re
查看原帖
谁能帮忙看一下,三个Re
101521
jkllage456楼主2018/6/14 17:08
#include<stdio.h>
#include<stdlib.h>
struct pp
{
    int fe;//记录朝向
    char ne[200];//记录名字
    int place;//记录第几个
}ex[100005],p;//p是用来记录指令所指的那个人代表的结构体数据;
int main()
{
    int fw[100005], weishu[100005];//分别代表朝左还是朝右,以及走几步;
    int i, j, n, m;
    scanf("%d%d", &n, &m);
    int pl = 0;
    for (i = 0; i < n; i++)
    {
        scanf("%d%s", &ex[i].fe, &ex[i].ne);
        ex[i].place = pl;
        pl++;
    }
    for (i = 0; i < m; i++)
    {
        scanf("%d%d", &fw[i],&weishu[i]);
    }
    for (i = 0; i < m; i++)
    {
        if (p.fe == 0)
        {
            if (fw[i] == 0)
            {
                if (p.place == 0)
                {
                        p = ex[n - weishu[i]];
                }
                else
                {
                    if (p.place - weishu[i] >= 0)
                    {
                        p = ex[p.place - weishu[i]];
                    }
                    else
                    {
                        p = ex[n - weishu[i] + p.place];
                    }
                }
            }
            else
            {
                if (p.place + weishu[i] >= n)
                {
                    p = ex[p.place + weishu[i] - n];
                }
                else
                {
                    p = ex[weishu[i] + p.place];
                }
            }
        }
        else
        {
            if (fw[i] == 0)
            {
                if (p.place + weishu[i] >= n)
                {
                    p = ex[p.place + weishu[i] - n];
                }
                else
                {
                    p = ex[p.place + weishu[i]];
                }
            }
            else
            {
                if (p.place == 0)
                {
                        p = ex[n - weishu[i]];
                }
                else
                {
                    if (p.place - weishu[i] >= 0)
                    {
                        p = ex[p.place - weishu[i]];
                    }
                    else p = ex[n = weishu[i] + p.place];					
                }
            }
        }
    }
    printf("%s\n", p.ne);
//	system("pause");
    return	0;
}
2018/6/14 17:08
加载中...