题解 | #坐标移动#

坐标移动

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


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

#define MAX 10001

int main()
{
    char str[MAX];
    scanf("%s",str);
    char *p=str;
    char d=0x00;
    int n=0;
    int x=0;
    int y=0;
    
    while(*p != '\0')
    {
        if(!d)
        {
            if(*p =='A'||*p=='S'||*p=='D'||*p=='W')
            {
                d=*p;
                p++;
                //printf("%c%c\r\n",d,*p);
                continue;
            }
            else if(*p != ';' && *p != '\0')
            {
                p++;
            }
        }
        if(d)
        {
            if( *p >= '0' && *p <= '9')
            {
                //printf("n1=%d\r\n",n);
                n *= 10;
                //printf("n2=%d\r\n",n);
                n += *p -'0';
                //printf("n3=%d\r\n",n);
            }
            else if(*p ==';')
            {
                if (d=='A')
                {
                    x -= n;
                    //printf("xA=%d\r\n",x);
                }
                else if (d =='D')
                {
                    x += n;
                    //printf("xD=%d\r\n",x);
                }
                else if (d == 'W')
                {
                    y += n;
                    //printf("yW=%d\r\n",x);
                }
                else if (d=='S')
                {
                    y -= n;
                    //printf("yS=%d\r\n",x);
                }
                d=0;
                n=0;
            }
            else
            {
                d=0;
                n=0;
            }
        }
        p++;
    }
    printf("%d,%d",x,y);
    return 0;
}
全部评论

相关推荐

06-26 15:35
武汉大学 运营
点赞 评论 收藏
分享
06-27 12:30
延安大学 C++
实习+外包,这两个公司底层融为一体了,如何评价呢?
一表renzha:之前面了一家外包的大模型,基本上都能答出来,那面试官感觉还没我懂,然后把我挂了,我都还没嫌弃他是外包,他把我挂了……
第一份工作能做外包吗?
点赞 评论 收藏
分享
xdm怎么说&nbsp;要被拷打了&nbsp;担心是KPI
丹田:面就完了,就当日薪四位数的大佬免费给给你面试。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务