编号 题目 状态 分数 总时间 内存 代码 / 答案文件 提交者 提交时间
#5876 #1056. 移动路线 Accepted 100 33 ms 508 K C++ 17 / 1.8 K AllenYGY 2024-08-17 16:53:59
显示原始代码
#include <bits/stdc++.h>
#include <iostream>
#define int long long

#define endl '\n'

using namespace std;

int read() {
    int x = 0, f = 1;
    char ch = getchar();
    while (ch < '0' || ch > '9') {
        if (ch == '-')
            f = -1;
        ch = getchar();
    }
    while (ch >= '0' && ch <= '9') x = x * 10 + ch - '0', ch = getchar();
    return x * f;
}

void write(int x) {
    if (x < 0)
        putchar('-'), x = -x;
    if (x > 9)
        write(x / 10);
    putchar(x % 10 + '0');
}

pair<int, int> operator+(const pair<int, int>& a, const pair<int, int>& b) {
    return { a.first + b.first, a.second + b.second };
}

void solve(const vector<string>& instructions) {
    unordered_map<char, pair<int, int>> direction_map = {
        { 'N', { 0, 1 } }, { 'E', { 1, 0 } }, { 'S', { 0, -1 } }, { 'W', { -1, 0 } }
    };

    for (const auto& instruction : instructions) {
        pair<int, int> pos = { 0, 0 };
        vector<pair<int, int>> path = { { 0, 0 } };

        for (const char& move : instruction) {
            pos = pos + direction_map[move];
            path.push_back(pos);
        }

        int cross_product_sum = 0;
        int n = path.size();
        for (int i = 1; i < n - 1; ++i) {
            auto [x1, y1] = path[i - 1];
            auto [x2, y2] = path[i];
            auto [x3, y3] = path[i + 1];
            cross_product_sum += (x2 - x1) * (y3 - y2) - (y2 - y1) * (x3 - x2);
        }

        if (cross_product_sum > 0) {
            cout << "CCW" << endl;
        } else {
            cout << "CW" << endl;
        }
    }
}
signed main() {
    int n = read();
    vector<string> instructions(n);
    for (int i = 0; i < n; ++i) {
        cin >> instructions[i];
    }

    solve(instructions);

    return 0;
}
子任务 #1
Accepted
得分:100
测试点 #1
Accepted
得分:100
用时:3 ms
内存:508 KiB

输入文件(1.in

2
NESW
WSSSEENWNEESSENNNNWWWS

答案文件(1.out

CW
CCW

用户输出

CW
CCW

系统信息

Exited with return code 0
测试点 #2
Accepted
得分:100
用时:3 ms
内存:388 KiB

输入文件(2.in

14
WSEEENWW
SSSENNNW
NWNEESSW
NEEESWWW
NESSWWNE
WNEESSWN
NNNESSSW
WSEEENWW
WSSENENW
SWNNEESW
NESSWWN
<29 bytes omitted>

答案文件(2.out

CCW
CCW
CW
CW
CW
CW
CW
CCW
CCW
CW
CW
CW
CCW
CCW

用户输出

CCW
CCW
CW
CW
CW
CW
CW
CCW
CCW
CW
CW
CW
CCW
CCW

系统信息

Exited with return code 0
测试点 #3
Accepted
得分:100
用时:4 ms
内存:244 KiB

输入文件(3.in

14
WWSEESENNNWS
NENNESSSWSWN
SSENNNNWSWSE
WNENNESESWSW
SSSEENWNENWW
WNEEESWSSWNN
NWNEESESSWNW
WWNENE
<85 bytes omitted>

答案文件(3.out

CCW
CW
CCW
CW
CCW
CW
CW
CW
CW
CCW
CW
CCW
CCW
CCW

用户输出

CCW
CW
CCW
CW
CCW
CW
CW
CW
CW
CCW
CW
CCW
CCW
CCW

系统信息

Exited with return code 0
测试点 #4
Accepted
得分:100
用时:4 ms
内存:384 KiB

输入文件(4.in

17
SESWWNNNWWNEEESENESESWWW
NNESEESWWSWWSWSWNNENNESE
NNWSWNWSWWSEEEESESENENWW
WWNEENEESWSESWSESWWNWN
<328 bytes omitted>

答案文件(4.out

CW
CW
CCW
CW
CW
CW
CCW
CCW
CW
CCW
CCW
CW
CCW
CCW
CCW
CW
CW

用户输出

CW
CW
CCW
CW
CW
CW
CCW
CCW
CW
CCW
CCW
CW
CCW
CCW
CCW
CW
CW

系统信息

Exited with return code 0
测试点 #5
Accepted
得分:100
用时:3 ms
内存:268 KiB

输入文件(5.in

14
SWWSESENENNNESENENWWWNNNNWSWSESWSESS
SWNWWWNEENESENNENESSWSESESWSESWWNNNW
NENWWNEEEESWSEEESWWSWNW
<421 bytes omitted>

答案文件(5.out

CCW
CW
CW
CCW
CW
CCW
CW
CW
CCW
CCW
CW
CW
CW
CCW

用户输出

CCW
CW
CW
CCW
CW
CCW
CW
CW
CCW
CCW
CW
CW
CW
CCW

系统信息

Exited with return code 0
测试点 #6
Accepted
得分:100
用时:3 ms
内存:360 KiB

输入文件(6.in

19
WNWNWWNENNESSESESENNESSENESEEESWSSWNNWSWNWWSSWNN
SSWNNWWNNESEENWNENESSSENNESSESWWSEEESWWSSWNNWNNW
<834 bytes omitted>

答案文件(6.out

CW
CW
CW
CW
CW
CCW
CCW
CCW
CW
CCW
CCW
CCW
CW
CW
CW
CW
CCW
CW
CW

用户输出

CW
CW
CW
CW
CW
CCW
CCW
CCW
CW
CCW
CCW
CCW
CW
CW
CW
CW
CCW
CW
CW

系统信息

Exited with return code 0
测试点 #7
Accepted
得分:100
用时:3 ms
内存:356 KiB

输入文件(7.in

11
NNEENWNWSWSWNWSWWSEEEESWWWWSEESSENNESENEESWSEENEENNWSWNWNWSW
WSWSSSENNENESESSWSSENENENWNEENESEENW
<574 bytes omitted>

答案文件(7.out

CCW
CCW
CW
CW
CW
CCW
CW
CCW
CCW
CW
CCW

用户输出

CCW
CCW
CW
CW
CW
CCW
CW
CCW
CCW
CW
CCW

系统信息

Exited with return code 0
测试点 #8
Accepted
得分:100
用时:3 ms
内存:432 KiB

输入文件(8.in

17
WWSEEESWSESENNNESSSESENENWWNEEENWWWNEEENWWWWSWWNENEENWWNWNWSSESWWWWSEEES
SWSWSWWNWSWSEEESWSESENEN
<1144 bytes omitted>

答案文件(8.out

CCW
CCW
CCW
CW
CW
CW
CW
CW
CW
CCW
CW
CW
CCW
CCW
CCW
CW
CCW

用户输出

CCW
CCW
CCW
CW
CW
CW
CW
CW
CW
CCW
CW
CW
CCW
CCW
CCW
CW
CCW

系统信息

Exited with return code 0
测试点 #9
Accepted
得分:100
用时:4 ms
内存:260 KiB

输入文件(9.in

20
WWNWWNWWWNENESENNNESSSSENNESSSENNENESEEEESSWNWWWWSEESSEEESWWSWNWNNWSSSWNWSWNWWNEEEEN
WNNNWSSSWNWS
<1603 bytes omitted>

答案文件(9.out

CW
CCW
CCW
CW
CW
CCW
CW
CCW
CCW
CCW
CW
CW
CW
CW
CCW
CW
CW
CW
CCW
CW

用户输出

CW
CCW
CCW
CW
CW
CCW
CW
CCW
CCW
CCW
CW
CW
CW
CW
CCW
CW
CW
CW
CCW
CW

系统信息

Exited with return code 0
测试点 #10
Accepted
得分:100
用时:3 ms
内存:276 KiB

输入文件(10.in

17
SWWWWWSEEESENESSWSESSSENNNNESESSEENWNENWWNWWNNESENEENWWNEEENWWWNEENWNWSWNNWSSSESSSWNWNNNWSSWSESE

<1552 bytes omitted>

答案文件(10.out

CCW
CCW
CW
CW
CCW
CW
CCW
CW
CW
CW
CW
CW
CW
CCW
CW
CCW
CW

用户输出

CCW
CCW
CW
CW
CCW
CW
CCW
CW
CW
CW
CW
CW
CW
CCW
CW
CCW
CW

系统信息

Exited with return code 0