题解 | #字符串反转#

坐标移动

http://www.nowcoder.com/practice/119bcca3befb405fbe58abe9c532eb29

#include<stdio.h>
#include<string.h>

int main(void)
{
    char buff[10001] = {0};
    char a[10001] = {0};
    int x = 0;
    int y = 0;
    int len = 0;
    int sum = 0;

    fgets(buff,10001,stdin);
    if('\n' == buff[strlen(buff)-1])
    {
        buff[strlen(buff)-1] = '\0';
    }

    for(int i=0; i<strlen(buff); i++)
    {
        if(';' != buff[i])
        {
            len++;
        }
        else
        {
            for(int j=0; j<len; j++)
            {
                if(0 == j)
                {
                    if('A' != buff[i-len] && 'S' != buff[i-len] 
                       && 'D' != buff[i-len] && 'W' != buff[i-len])
                    {
                        len = 0;
                        break;
                    }
                }
                else
                {
                    if('9' < buff[i-len+j] || '0' > buff[i-len+j])
                    {
                        len = 0;
                        break;
                    }
                     a[j-1] =  buff[i-len+j];

                    if(len-1 == j)
                    {
                        for(int k=0; k<len-1; k++)
                        {
                            sum = sum*10 + a[k] -'0';
                        }

                         if('A' == buff[i-len])
                        {
                            x = x - sum;
                        }
                        else if('D' == buff[i-len])
                        {
                            x = x + sum;
                        }
                        else if('W' == buff[i-len])
                        {
                            y = y + sum;
                        }
                        else if('S' == buff[i-len])
                        {
                            y = y - sum;
                        }
                        len = 0;
                        sum = 0;
                    }

                }
            }
        }
    }

    printf("%d,%d",x,y);
    return 0;
}
全部评论

相关推荐

1 1 评论
分享
牛客网
牛客企业服务