QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#704358 | #9521. Giving Directions in Harbin | fosov | RE | 0ms | 3636kb | C++14 | 1.3kb | 2024-11-02 19:50:21 | 2024-11-02 19:50:22 |
Judging History
answer
#include "bits/stdc++.h"
using namespace std;
#define ll long long
#define ull unsigned long long
#define MOD ((int) (1e9) + 7)
#define pii pair<int, int>
#define N 500010
char d;
int x;
int main() {
#ifdef TEST
freopen("zz.in", "r+", stdin);
#endif
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
unordered_map<char, int> r;
r['N'] = 0;
r['E'] = 1;
r['S'] = 2;
r['W'] = 3;
int t; cin >> t;
while (t --) {
int n; cin >> n;
vector<pair<char, int>> res;
cin >> d >> x;
res.emplace_back(d, -1);
res.emplace_back('Z', x);
char cur = d;
for (int i = 1; i < n; ++ i) {
cin >> d >> x;
if ((r[cur] + 1) % 4 == r[d]) {
res.emplace_back('R', -1);
} else {
assert((r[cur] + 3) % 4 == r[d]);
res.emplace_back('L', -1);
}
res.emplace_back('Z', x);
}
cout << res.size() - 1 << ' ';
for (auto [x, y] : res) {
if (y == -1) {
cout << x << '\n';
} else {
cout << x << ' ' << y << '\n';
}
}
}
return 0;
}
详细
Test #1:
score: 100
Accepted
time: 0ms
memory: 3636kb
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
Runtime Error
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...