QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#719305#9521. Giving Directions in HarbinRWeakestWA 0ms3628kbC++171.4kb2024-11-07 00:08:552024-11-07 00:08:56

Judging History

你现在查看的是最新测评结果

  • [2024-11-07 00:08:56]
  • 评测
  • 测评结果:WA
  • 用时:0ms
  • 内存:3628kb
  • [2024-11-07 00:08:55]
  • 提交

answer

#include <bits/stdc++.h>

using namespace std;
#define ll long long

const int N = 3e3 + 10;

ll T, n, len;
string turn;
int nx[200], ny[200];

void solve() {
    cin >> n;
    int x = 0, y = 0;
    for (int i = 1; i <= n; i++) {
        cin >> turn >> len;
        x += nx[turn[0]] * len, y += ny[turn[0]] * len;
    }
    int m = 0;
    if (x == 0 && y == 0) {
        cout << "0 S\n";
        return;
    }
    if (x != 0 && y != 0) {
        m = 3;
        cout << m << " ";
        if (x >= 0) cout << "N\n";
        else cout << "S\n";
        if (x != 0) {
            cout << "Z " << abs(x) << "\n";
        }
        if (y != 0) {
            if ((x >= 0 && y > 0) || (x < 0 && y < 0)) cout << "R\n";
            else cout << "L\n";
            cout << "Z " << abs(y) << "\n";
        }
    } else {
        char st;
        if (x > 0) st = 'N';
        if (x < 0) st = 'S';
        if (y > 0) st = 'E';
        if (y < 0) st = 'W';
        cout << 1 << " " << st << "\n";
        cout << "Z " << abs(x + y) << "\n";
    }
}

int main() {
    std::ios::sync_with_stdio(false);
    std::cin.tie(nullptr), std::cout.tie(nullptr);

    nx['N'] = 1, nx['S'] = -1, ny['W'] = -1, ny['E'] = 1;

    cin >> T;
    while (T--) {
        solve();
    }


    return 0;
}

/*
8
2
S 2
E 1
2
N 2
E 1
2
S 2
W 1
2
N 2
W 1
1
W 1
1
E 1
1
S 1
1
N 1
 */

详细

Test #1:

score: 100
Accepted
time: 0ms
memory: 3628kb

input:

1
2
S 2
E 1

output:

3 S
Z 2
L
Z 1

result:

ok ok (1 test case)

Test #2:

score: -100
Wrong Answer
time: 0ms
memory: 3584kb

input:

99
4
E 6
N 1
W 2
S 8
8
W 10
N 1
E 10
S 2
E 2
N 2
W 2
S 1
9
N 5
E 4
N 7
E 6
S 9
E 8
N 4
W 6
N 7
6
N 6
E 6
N 8
W 9
S 7
E 2
8
E 6
S 9
W 5
S 4
W 6
N 4
E 5
N 9
8
N 6
W 10
N 6
W 6
S 6
E 6
S 6
E 10
10
N 7
W 3
N 5
W 5
S 8
W 10
N 6
E 9
N 8
E 8
8
W 9
N 10
E 6
S 10
E 9
S 10
W 6
N 10
4
W 5
N 1
E 5
S 1
4
W 4
S 8...

output:

3 S
Z 7
L
Z 4
0 S
3 N
Z 14
R
Z 12
3 N
Z 7
L
Z 1
0 S
0 S
3 N
Z 18
L
Z 1
0 S
0 S
0 S
0 S
3 S
Z 3
L
Z 9
1 W
Z 10
0 S
3 S
Z 16
R
Z 9
3 N
Z 4
L
Z 3
3 S
Z 7
L
Z 5
0 S
0 S
3 S
Z 12
L
Z 3
0 S
3 S
Z 9
R
Z 6
0 S
3 S
Z 8
L
Z 8
3 S
Z 8
R
Z 4
0 S
0 S
0 S
3 N
Z 5
R
Z 9
0 S
1 N
Z 10
0 S
0 S
3 S
Z 5
R
Z 2
3 S
Z 10
...

result:

wrong answer Integer parameter [name=m] equals to 0, violates the range [1, 20] (test case 2)