QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#21426#2815. 组合数据结构问题Skyqwq#AC ✓13ms3704kbC++141.3kb2022-03-04 23:05:572022-05-08 03:15:04

Judging History

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

  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2022-05-08 03:15:04]
  • 评测
  • 测评结果:AC
  • 用时:13ms
  • 内存:3704kb
  • [2022-03-04 23:05:57]
  • 提交

answer

// Skyqwq
#include <bits/stdc++.h>

#define pb push_back
#define fi first
#define se second
#define mp make_pair

using namespace std;

typedef pair<int, int> PII;
typedef long long LL;

template <typename T> bool chkMax(T &x, T y) { return (y > x) ? x = y, 1 : 0; }
template <typename T> bool chkMin(T &x, T y) { return (y < x) ? x = y, 1 : 0; }

template <typename T> void inline read(T &x) {
    int f = 1; x = 0; char s = getchar();
    while (s < '0' || s > '9') { if (s == '-') f = -1; s = getchar(); }
    while (s <= '9' && s >= '0') x = x * 10 + (s ^ 48), s = getchar();
    x *= f;
}

const int N = 1e5 + 5;

int n;

stack<int> s;

queue<int> q;

priority_queue<int> mx;

priority_queue<int, vector<int>, greater<int> > mn;

bool st[4];

int main() {
    read(n);
    while (n--) {
    	int op, v; read(op), read(v);
    	if (op == 1) {
    		s.push(v);
    		q.push(v);
    		mx.push(v);
    		mn.push(v);
    	} else {
    		if (!s.size()) {
				st[0] = st[1] = st[2] = st[3] = 1;
				break;
			}
    		if (s.top() != v) st[1] = 1;
			if (q.front() != v) st[0] = 1;
			if (mx.top() != v) st[2] = 1;
			if (mn.top() != v) st[3] = 1;

    		s.pop();
    		q.pop();
    		mx.pop();
    		mn.pop();
    	}
    }
    for (int i = 0; i < 4; i++) puts(st[i] ? "No" : "Yes");
    return 0;
}

详细

Test #1:

score: 100
Accepted
time: 3ms
memory: 3704kb

input:

6
1 1
1 2
1 3
2 1
2 2
2 3

output:

Yes
No
No
Yes

result:

ok 4 lines

Test #2:

score: 0
Accepted
time: 8ms
memory: 3632kb

input:

100000
1 49
1 59
2 49
1 98
2 59
2 98
1 95
1 34
1 64
2 95
1 18
1 44
1 7
1 78
2 34
2 64
2 18
1 37
2 44
1 89
2 7
1 2
1 21
2 78
2 37
1 90
1 75
1 50
1 33
1 70
1 32
2 89
2 2
1 49
2 21
1 46
2 90
1 3
2 75
1 50
1 37
1 24
1 88
1 78
2 50
1 22
1 73
1 95
1 100
2 33
1 28
1 62
1 25
2 70
1 90
2 32
1 31
2 49
2 46
2 ...

output:

Yes
No
No
No

result:

ok 4 lines

Test #3:

score: 0
Accepted
time: 13ms
memory: 3636kb

input:

100000
1 78
1 47
1 9
2 9
2 47
2 78
1 67
1 58
1 6
2 6
1 60
1 5
2 5
2 60
1 100
2 100
1 76
1 28
1 81
1 40
1 5
2 5
2 40
1 39
1 13
1 82
2 82
2 13
1 19
2 19
2 39
1 47
1 25
2 25
2 47
2 81
2 28
2 76
2 58
2 67
1 13
2 13
1 39
2 39
1 72
2 72
1 88
1 84
2 84
2 88
1 100
2 100
1 2
2 2
1 91
1 20
2 20
1 25
1 37
2 37...

output:

No
Yes
No
No

result:

ok 4 lines

Test #4:

score: 0
Accepted
time: 2ms
memory: 3628kb

input:

100000
1 99
1 79
2 79
1 90
2 90
2 99
1 43
1 40
1 61
2 40
2 43
2 61
1 98
1 70
1 65
2 65
2 70
2 98
1 64
2 64
1 64
1 12
1 57
1 54
1 69
1 19
1 67
1 99
1 42
1 25
1 88
2 12
2 19
1 50
1 45
1 60
1 55
1 14
1 49
1 55
2 14
1 87
2 25
1 14
2 14
1 37
1 20
2 20
2 37
2 42
2 45
2 49
1 82
1 39
1 80
1 76
1 7
2 7
1 19
...

output:

No
No
No
Yes

result:

ok 4 lines

Test #5:

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

input:

100000
1 83
2 83
1 84
1 49
1 12
1 29
2 84
2 49
1 3
2 29
2 12
2 3
1 24
1 46
1 13
2 46
2 24
2 13
1 66
1 92
2 92
2 66
1 37
1 50
1 16
1 90
2 90
1 92
2 92
1 38
2 50
1 24
1 85
1 13
2 85
2 38
1 53
1 46
1 7
1 43
1 16
1 28
2 53
1 56
1 59
2 59
2 56
2 46
2 43
1 31
1 64
1 3
2 64
1 46
2 46
2 37
2 31
1 71
2 71
1 ...

output:

No
No
Yes
No

result:

ok 4 lines

Test #6:

score: 0
Accepted
time: 9ms
memory: 3700kb

input:

100000
1 -2147483648
2 -2147483648
1 -2147483648
1 1
1 1
2 -2147483648
2 1
1 -2147483648
2 -2147483648
1 -1
1 1
2 -1
1 1
1 -2147483648
2 -2147483648
1 1
1 -2147483648
2 -2147483648
2 1
2 1
1 -1
2 -1
1 -1
2 -1
2 1
2 1
1 -2147483648
2 -2147483648
1 1
2 1
1 -1
2 -1
1 1
2 1
1 1
2 1
1 -2147483648
2 -2147...

output:

No
No
No
Yes

result:

ok 4 lines

Test #7:

score: 0
Accepted
time: 3ms
memory: 3496kb

input:

100000
1 1
2 1
1 1
2 1
2 1
1 1
1 1
1 1
1 1
1 1
1 1
2 1
2 1
1 1
2 1
2 1
1 1
2 1
2 1
1 1
1 1
2 1
1 1
2 1
2 1
2 1
1 1
1 1
1 1
2 1
2 1
1 1
2 1
2 1
2 1
2 1
2 1
2 1
2 1
1 1
1 1
1 1
1 1
1 1
1 1
2 1
2 1
2 1
2 1
1 1
1 1
2 1
2 1
2 1
1 1
1 1
1 1
2 1
1 1
2 1
1 1
1 1
1 1
2 1
1 1
2 1
2 1
2 1
1 1
1 1
2 1
1 1
1 1
2...

output:

No
No
No
No

result:

ok 4 lines