QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#740957#9521. Giving Directions in HarbingxqrlcAC ✓7ms3860kbC++141.5kb2024-11-13 12:40:212024-11-13 12:40:22

Judging History

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

  • [2024-11-13 12:40:22]
  • 评测
  • 测评结果:AC
  • 用时:7ms
  • 内存:3860kb
  • [2024-11-13 12:40:21]
  • 提交

answer

#include<bits/stdc++.h>
#define rep(i, l, r) for(int i = (l); i <= (r); i ++)
#define pre(i, l, r) for(int i = (l); i >= (r); i --)
#define Grp(x, i) for(int i = h[x]; i; i = ne[i])
using namespace std;

typedef long long LL;
const int N = 200009;

inline int read() {
    int x = 0; char fs = 0, c = getchar(); while(! isdigit(c)) fs |= (c == '-'), c = getchar();
    while(isdigit(c)) x = (x << 1) + (x << 3) + (c - '0'), c = getchar();
    return fs ? -x : x;
}


int T, n;
char ans[N];
int tot;
int len[N];
char fs[209][209];
int pos[4];

int main() {
    pos[0] = 'N';
    pos[1] = 'W';
    pos[2] = 'S';
    pos[3] = 'E';
    for(int i = 0; i <= 3; i ++) {
        fs[pos[i]][pos[(i + 1) % 4]] = 'L';
        fs[pos[i]][pos[(i + 3) % 4]] = 'R';
    }
    T = read();
    while(T --) {
        tot = 0;
        n = read();
        char now;
        ans[0] = 0;
        for(int i = 1; i <= n; i ++) {
            char op[3]; int l;
            scanf("%s%d", op, &l);
            if(! ans[0]) ans[0] = op[0];
            if(i == 1) ans[++ tot] = 'Z', len[tot] = l;
            else {
                ans[++ tot] = fs[(int)now][(int)op[0]];
                ans[++ tot] = 'Z';
                len[tot] = l;
            }
            now = op[0];
        }
        printf("%d %c\n", tot, ans[0]);
        rep(i, 1, tot) {
            printf("%c", ans[i]);
            if(ans[i] == 'Z') printf(" %d\n", len[i]);
            else printf("\n");
        }
    }
    return 0;
}

这程序好像有点Bug,我给组数据试试?

详细

Test #1:

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

input:

1
2
S 2
E 1

output:

3 S
Z 2
L
Z 1

result:

ok ok (1 test case)

Test #2:

score: 0
Accepted
time: 1ms
memory: 3768kb

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:

7 E
Z 6
L
Z 1
L
Z 2
L
Z 8
15 W
Z 10
R
Z 1
R
Z 10
R
Z 2
L
Z 2
L
Z 2
L
Z 2
L
Z 1
17 N
Z 5
R
Z 4
L
Z 7
R
Z 6
R
Z 9
L
Z 8
L
Z 4
L
Z 6
R
Z 7
11 N
Z 6
R
Z 6
L
Z 8
L
Z 9
L
Z 7
L
Z 2
15 E
Z 6
R
Z 9
R
Z 5
L
Z 4
R
Z 6
R
Z 4
R
Z 5
L
Z 9
15 N
Z 6
L
Z 10
R
Z 6
L
Z 6
L
Z 6
L
Z 6
R
Z 6
L
Z 10
19 N
Z 7
L
Z 3
R
Z 5
...

result:

ok ok (99 test cases)

Test #3:

score: 0
Accepted
time: 7ms
memory: 3776kb

input:

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

output:

1 W
Z 9
1 N
Z 3
19 W
Z 10
R
Z 7
L
Z 5
L
Z 9
R
Z 9
L
Z 8
L
Z 9
R
Z 6
L
Z 5
R
Z 5
3 E
Z 8
R
Z 10
3 N
Z 7
L
Z 5
9 S
Z 4
R
Z 3
L
Z 7
L
Z 4
L
Z 7
15 N
Z 7
R
Z 8
L
Z 3
R
Z 9
R
Z 5
R
Z 5
L
Z 9
R
Z 10
17 W
Z 9
L
Z 6
L
Z 6
L
Z 8
L
Z 5
R
Z 6
L
Z 3
R
Z 8
L
Z 7
5 S
Z 9
R
Z 2
R
Z 10
9 N
Z 6
R
Z 4
L
Z 6
R
Z 10
L
...

result:

ok ok (10000 test cases)

Extra Test:

score: 0
Extra Test Passed