题解 | #坐标移动#

坐标移动

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

#include <cctype>
#include <iostream>
#include<string>
#include<vector>
#include<algorithm>
using namespace std;

int main() {
    string s;
    getline(cin, s);
    vector<string> v;
    vector<int> vi;
    vector<char> vc;
    for (int i = 0; i < s.size(); i = i + 1) {
        string temp;
        while (s[i] != ';') {
            temp.push_back(s[i]);
            i = i + 1;
        }
        v.push_back(temp);
    }
    for (int i = 0; i < v.size(); i++) {
        if (v[i].size() == 2 && isalpha(v[i][0]) && isdigit(v[i][1])) {
            vc.push_back(v[i][0]);
            vi.push_back(v[i][1]-'0');
        } else if (v[i].size() == 3 && isalpha(v[i][0]) && isdigit(v[i][1]) &&
                   isdigit(v[i][2])) {
            vc.push_back(v[i][0]);
            vi.push_back((v[i][1] - '0')*10 + (v[i][2] - '0'));
        }
    }
    int x = 0,y=0;
    for (int j = 0; j < vi.size(); j++) {
        if (vc[j] == 'W')
            y += vi[j];
        if (vc[j] == 'A')
            x -= vi[j];
        if (vc[j] == 'S')
            y -= vi[j];
        if (vc[j] == 'D')
            x += vi[j];
    }
    cout << x << ',' << y << endl;

}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

那一天的Java_Java起来:他本来公司就是做这个的,不就是正常的游戏客户端和服务器开发,软硬件联动,有啥恶心不恶心的,提前告诉你就是怕你接受不了,接受不了就没必要再往后走流程浪费时间,虽然这公司是一坨。
点赞 评论 收藏
分享
05-12 17:28
已编辑
门头沟学院 硬件开发
ldf李鑫:不说公司名祝你以后天天遇到这样的公司
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务