QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#397204 | #8114. Labirint | lfxxx# | 11 | 2ms | 6156kb | C++14 | 1.8kb | 2024-04-23 19:36:43 | 2024-07-04 03:37:05 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define ull unsigned long long
#define pii pair<int, int>
#define all(x) (x).begin(), (x).end()
bool be;
constexpr int N = 205;
int n, m, a[N][N], b[N][N];
struct dsu {
int fa[N * N];
dsu() {
iota(fa, fa + N, 0);
}
int find(int k)
{
return fa[k] == k ? k : fa[k] = find(fa[k]);
}
void merge(int u, int v)
{
u = find(u), v = find(v);
if (u == v) return;
fa[u] = v;
}
}d[20];
int to(char c)
{
if (c == 'P') return 0;
if (c == 'C') return 1;
if (c == 'Z') return 2;
return 3;
}
int id(int i, int j)
{
return (i - 1) * m + j;
}
bool en;
int main()
{
#ifdef IAKIOI
freopen("in.in", "r", stdin);
// freopen("out.out", "w", stdout);
cerr << (&be - &en) / 1024.0 / 1024 << " MB\n-------------------\n";
#endif
ios::sync_with_stdio(false);
cin.tie(nullptr);
cin >> n >> m;
for (int i = 1; i <= n; ++i) {
for (int j = 1; j < m; ++j) {
char c;
cin >> c;
a[i][j] = to(c);
}
}
for (int i = 1; i < n; ++i) {
for (int j = 1; j <= m; ++j) {
char c;
cin >> c;
b[i][j] = to(c);
}
}
for (int S = 0; S < 16; ++S) {
for (int i = 1; i <= n; ++i) {
for (int j = 1; j < m; ++j) {
if ((S >> a[i][j]) & 1) {
d[S].merge(id(i, j), id(i, j + 1));
}
}
}
for (int i = 1; i < n; ++i) {
for (int j = 1; j <= m; ++j) {
if ((S >> b[i][j]) & 1) {
d[S].merge(id(i, j), id(i + 1, j));
}
}
}
}
int q;
cin >> q;
while (q--) {
int a, b, c, D;
cin >> a >> b >> c >> D;
int x = id(a, b), y = id(c, D), ans = 5;
for (int S = 0; S < 16; ++S) {
if (d[S].find(x) == d[S].find(y)) {
ans = min(ans, __builtin_popcount(S));
}
}
cout << ans << '\n';
}
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Subtask #1:
score: 11
Accepted
Test #1:
score: 11
Accepted
time: 1ms
memory: 5572kb
input:
1 100 NPPPZNNPCPCNZNZNZPZZPPPNPCPNPZCPCPCNNCZZPPCPPZPNPNCZCPZNZNPPZNPPZZNPPNCNPZZPZPZZNPCPNNZNNPCNCPZPCNN 100 1 55 1 37 1 52 1 64 1 36 1 4 1 68 1 66 1 50 1 80 1 84 1 77 1 99 1 68 1 84 1 56 1 5 1 95 1 38 1 68 1 82 1 3 1 64 1 36 1 61 1 21 1 1 1 4 1 2 1 46 1 55 1 100 1 4 1 83 1 53 1 96 1 76 1 43 1 21 1...
output:
4 4 4 2 4 4 4 4 4 4 4 4 4 2 4 4 4 4 4 1 4 4 4 4 3 4 4 4 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 1 4 4 4 4 4 4 4 4 2 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 2 4 4 4 2 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 3 4 1
result:
ok 100 lines
Test #2:
score: 0
Accepted
time: 0ms
memory: 3932kb
input:
1 100 NPNPZPCZZPPCCNCZNPPCCZNNPPPZCCCCPZZPCZPZPPPPNCPCZPCPZZZPCCZZCPPCCNPNCZCNZPCNZNCCPZZZZZZCNZCNNPNPZCC 100 1 36 1 54 1 36 1 56 1 35 1 3 1 21 1 96 1 18 1 37 1 55 1 86 1 90 1 91 1 90 1 99 1 17 1 42 1 53 1 72 1 5 1 61 1 91 1 29 1 69 1 62 1 78 1 53 1 36 1 47 1 37 1 16 1 90 1 14 1 83 1 15 1 7 1 48 1 4...
output:
4 4 4 4 4 4 1 4 4 4 4 4 3 4 4 4 4 4 4 4 4 1 4 4 4 4 4 4 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 4 4 4 4 3 4 4 4 4 4 4 1 4 4 4 4 4 2 4 4 4 4 4 4 4 4 4 4 4 4 4 2 1 2 4 4 4 3 4 4 3 2 4 4 4 4 4
result:
ok 100 lines
Test #3:
score: 0
Accepted
time: 0ms
memory: 3696kb
input:
1 100 CCPCPPZNNNZPZNCCCPPZNCCCPPPPCNNPZZCCCZCNPZNCNPZCNPNPNNCNPCZPNNCZZZPCNZNPCPZCPNZZZPNCNNZNNNNPNNZCNPN 100 1 81 1 78 1 80 1 50 1 32 1 94 1 100 1 50 1 27 1 25 1 47 1 94 1 52 1 20 1 21 1 72 1 38 1 28 1 3 1 33 1 20 1 33 1 60 1 78 1 62 1 34 1 48 1 49 1 91 1 36 1 94 1 36 1 15 1 55 1 20 1 98 1 81 1 97 ...
output:
2 4 4 4 1 4 4 4 4 4 4 4 4 1 4 4 4 4 4 4 4 4 4 4 1 4 4 4 4 4 4 4 4 4 4 1 4 4 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 2 1 4 4 4 4 4 4 3 4 4 4 4 4 4
result:
ok 100 lines
Test #4:
score: 0
Accepted
time: 1ms
memory: 5884kb
input:
1 100 NNPNNCCZPPCNCCPCCPZCCPZZCZZCPNNNNCNPCNCNCCPCCZPZPPZZPZCPZPZCCCZNCZCNZCCCZCNCCZPPPPCZNNCPNZNZNNCCNPZ 100 1 99 1 21 1 71 1 64 1 13 1 25 1 20 1 94 1 84 1 20 1 29 1 22 1 79 1 34 1 28 1 46 1 87 1 59 1 3 1 64 1 54 1 69 1 63 1 47 1 33 1 59 1 94 1 100 1 99 1 18 1 88 1 30 1 21 1 56 1 30 1 26 1 49 1 92 ...
output:
4 3 3 4 4 3 4 3 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 3 4 4 2 4 3 1 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 2 4 4 2 3 4 4 4 3 3 4 4 4 4 2 4 4 4 2 1 1 2 4 2 4 4 4 4 4 4 4 3 4 4 4 4 4 3
result:
ok 100 lines
Test #5:
score: 0
Accepted
time: 1ms
memory: 5684kb
input:
1 100 ZCNPNPNCZPPNZZNPNNCPNZNPPPZNNZZPNNPCZNNNNNPZZPPZNCNCNPPZCNNPNPCPNCNCCNNZPZNCPPZCCPCZCCNPPCCPCZZCZZZ 100 1 9 1 55 1 80 1 51 1 97 1 85 1 74 1 92 1 68 1 24 1 73 1 97 1 2 1 82 1 18 1 94 1 70 1 94 1 74 1 8 1 11 1 91 1 9 1 8 1 58 1 85 1 55 1 74 1 28 1 75 1 74 1 63 1 35 1 67 1 77 1 59 1 97 1 32 1 63 ...
output:
4 4 4 4 4 4 4 4 4 4 4 1 4 4 4 4 4 4 4 4 4 4 4 4 1 4 4 4 4 4 4 4 4 4 4 4 2 4 1 3 4 4 4 4 4 4 4 3 4 4 2 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 1 3 4 4 4 4 4 4 4 1 4 4 4 4 4 4 4 4 4 2 4 4 4 1 4 4
result:
ok 100 lines
Test #6:
score: 0
Accepted
time: 1ms
memory: 5704kb
input:
1 100 PCPNNNPNCPZNNZCPZZPCCNZPPCNZNPZPPPCZPNCZPCNPCCZPZCNCZCNCNZPNCZCNPZPPNCNCZNPCNZNNZCPNCZNNNPZNZPCPPCC 100 1 11 1 34 1 70 1 64 1 1 1 82 1 95 1 96 1 42 1 85 1 27 1 18 1 87 1 48 1 59 1 9 1 30 1 26 1 22 1 58 1 43 1 72 1 33 1 29 1 89 1 60 1 99 1 89 1 55 1 24 1 18 1 9 1 26 1 54 1 57 1 18 1 30 1 37 1 6...
output:
4 3 4 1 4 4 4 4 3 4 4 3 4 4 4 4 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 4 4 4 4 4 4 1 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 1 4 4 4 4 4 1 4 4 4 4 4 4 4 4 4 4
result:
ok 100 lines
Subtask #2:
score: 0
Wrong Answer
Test #7:
score: 0
Wrong Answer
time: 1ms
memory: 6040kb
input:
100 100 PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP...
output:
0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
result:
wrong answer 1st lines differ - expected: '2', found: '0'
Subtask #3:
score: 0
Wrong Answer
Test #16:
score: 0
Wrong Answer
time: 2ms
memory: 6156kb
input:
100 100 PPPPCCCCCCCCCPCCPPCCCPPPCCPPCCCPPPPPCCCCCCCPCCCPCCPPCCCPPCCCPPPCPPPPPPCCPPPCCCPPCCCCCPPPPPPPPCPPCPC PCPCPCCCCCCCPPPCCPPPPPPCPPPCPCPCCPPPCPCPCCPCCCCCCPPPCCPCCPCPCCPPCPPCCPCCPPPCPPPCPPCPCPPPCPCPPCPCCCC PCPCCCPPCPPPPCCCCCPCPPCCPPPPPCCCPCPPPPPPPCCPPCCPPCCPCCCCCPPCCCPPCPCPPCCPCPCPCPPPPCCPPPPCCPCP...
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0
result:
wrong answer 1st lines differ - expected: '2', found: '0'
Subtask #4:
score: 0
Wrong Answer
Test #25:
score: 0
Wrong Answer
time: 2ms
memory: 6060kb
input:
100 100 PZCZZZNPZPZPCCCCPNPZCCZZPPPPNCPZNPZPPNZNCPCNPCNCZZNCCZPZPPPZZZCZCZNPZPNZZZPPZPPZZPCPCZPNNCZZCPCNNNZ NCZZPPCZNZNNNNNNPPNNCPZCZNNPNCCPZZZCZNPZZZNCCNNZPPCPZNPCPCZCZPZCCPPPCZPZCCPNNNNZZZZCZZNZNZPPZPCNZPC PCCNZCCZZPZPPNZZNPCCNNZPCNPPZZNCPZNZPCZZPPCCCCNNZZCCNPPZNZNZZZNNNNZZNCNCCCNZPCZCPPZPCPCPZNPP...
output:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 2 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 1 0 0 0 0 0 0 2 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
result:
wrong answer 1st lines differ - expected: '3', found: '0'