QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#882311#2787. Teamsthangthang0 4ms6508kbC++141.6kb2025-02-04 23:42:212025-02-04 23:42:22

Judging History

This is the latest submission verdict.

  • [2025-02-04 23:42:22]
  • Judged
  • Verdict: 0
  • Time: 4ms
  • Memory: 6508kb
  • [2025-02-04 23:42:21]
  • Submitted

answer

#ifdef ONLINE_JUDGE

#include "teams.h"

#endif // ONLINE_JUDGE

#include <bits/stdc++.h>

using namespace std;

const int MaxN = 1e5 + 5;

int n, a[MaxN], b[MaxN];
int q, m, k[MaxN], fl[MaxN], fr[MaxN];

void init(int N, int A[], int B[]){
    n = N;
    for (int i = 0; i < n; ++ i)
        fl[B[i]] ++, fr[A[i]] ++;

    for (int i = 1; i <= n; ++ i)
        fl[i] += fl[i - 1];

    for (int i = n; i >= 1; -- i)
        fr[i] += fr[i + 1];
}

int p[MaxN], s[MaxN];

int can(int M, int K[]){

    for (int i = M; i >= 1; -- i)
        s[i] = K[i - 1];

    s[0] = 0, s[m + 1] = 0;
    sort(s + 1, s + m + 1);
    vector <int> diff;
    for (int i = 1; i <= M; ++ i){
        p[i] = p[i - 1] + s[i];
        if (p[i] > n) return 0;

        if (s[i] != s[i - 1] || s[i] != s[i + 1])
            diff.push_back(i);
    }

    if (K[M - 1] == 1) return 0;

    int sz = diff.size();
    for (int u = 0; u < sz; ++ u){
        int l = s[diff[u]];
        for (int v = u; v < sz; ++ v){
            int r = s[diff[v]];
            if (n - fl[l - 1] - fr[r + 1] < p[diff[v]] - p[diff[u] - 1])
                return 0;
        }
    }

    return 1;
}

#ifndef ONLINE_JUDGE

int main(){
    ios_base::sync_with_stdio(0);
    cin.tie(0); cout.tie(0);

    cin >> n;
    for (int i = 0; i < n; ++ i)
        cin >> a[i] >> b[i];

    init(n, a, b);

    cin >> q;
    for (int loops = 0; loops < q; ++ loops){
        cin >> m;
        for (int i = 0; i < m; ++ i)
            cin >> k[i];

        cout << can(m, k) << "\n";
    }
}

#endif // ONLINE_JUDGE

详细

Subtask #1:

score: 0
Wrong Answer

Test #1:

score: 21
Accepted
time: 0ms
memory: 3712kb

input:

4
2 4
1 2
2 3
2 3
2
2 1 3
2 1 1

output:

1
0

result:

ok 2 lines

Test #2:

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

input:

5
2 3
2 2
3 4
2 2
1 1
1
3 2 1 2

output:

1

result:

wrong answer 1st lines differ - expected: '0', found: '1'

Subtask #2:

score: 0
Wrong Answer

Test #27:

score: 13
Accepted
time: 4ms
memory: 6508kb

input:

100000
46503 61502
34278 63026
24651 60296
27921 32693
40654 78541
38357 97853
50234 74256
28875 64172
1156 66821
33682 85011
38633 55442
26468 75403
7744 95912
7639 20373
3489 65670
44385 68195
80744 92399
443 48207
20978 48590
42574 66994
94782 98699
69048 75985
3748 51039
56069 88210
15619 22502
...

output:

0

result:

ok single line: '0'

Test #28:

score: 13
Accepted
time: 3ms
memory: 5376kb

input:

100000
23870 62096
6565 45612
1109 94686
60692 94017
34512 95079
64450 77378
21832 56221
45089 57006
46643 50408
96079 97119
60110 82767
11385 91389
34321 46387
53829 66069
14404 75150
6213 57606
43918 82140
4948 55435
23376 51028
22205 30478
29042 31756
31998 33180
41368 57346
52764 68043
11566 707...

output:

0

result:

ok single line: '0'

Test #29:

score: 0
Wrong Answer
time: 3ms
memory: 5248kb

input:

100000
59419 71286
61502 99530
19798 67560
47714 64697
63194 78267
31804 43941
85524 99088
15970 21868
15988 90245
63235 72884
63991 89776
41084 64662
16736 30436
38234 67822
6618 77375
24943 64281
54442 81083
68112 82304
24706 89837
23429 56940
67196 81327
7563 54090
44866 92572
42558 53589
7177 12...

output:

1

result:

wrong answer 1st lines differ - expected: '0', found: '1'

Subtask #3:

score: 0
Skipped

Dependency #1:

0%

Subtask #4:

score: 0
Skipped

Dependency #1:

0%