Submission #586905

#TimeUsernameProblemLanguageResultExecution timeMemory
586905eecsTenis (COI19_tenis)C++17
30 / 100
1084 ms2704 KiB
#include <bits/stdc++.h>
using namespace std;

const int maxn = 100010;
int n, m, p[3][maxn], q[3][maxn];

int main() {
    ios::sync_with_stdio(0), cin.tie(0);
    cin >> n >> m;
    for (int i : {0, 1, 2}) {
        for (int j = 1; j <= n; j++) {
            cin >> p[i][j], q[i][p[i][j]] = j;
        }
    }
    while (m--) {
        int op, x, y, z;
        cin >> op >> x;
        if (op == 1) {
            bool flag = 1;
            int mx = 0;
            for (int i = 1; i < q[0][x]; i++) {
                for (int j : {1, 2}) {
                    mx = max(mx, q[0][p[j][i]]);
                }
                if (mx == i) { flag = 0; break; }
            }
            cout << (flag ? "DA\n" : "NE\n");
        } else {
            cin >> y >> z, x--;
            swap(p[x][q[x][y]], p[x][q[x][z]]), swap(q[x][y], q[x][z]);
        }
    }
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...