Lớn nhất, nhỏ nhất

Xem PDF



Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 1300 Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Cho mảng \(A[]\) gồm \(n\) phần tử, có 4 loại thao tác:

  • Thao tác 1: Thêm phần tử \(X\) vào mảng
  • Thao tác 2: Xóa mọi giá trị \(X\) khỏi mảng nếu \(X\) tồn tại trong mảng
  • Thao tác 3: Tìm phần tử nhỏ nhất trong mảng
  • Thao tác 4: Tìm phần tử lớn nhất trong mảng

Đối với thao tác 3 và 4 bạn hãy in ra phần tử lớn nhất, nhỏ nhất trong mảng \(A[]\).

Input

  • Dòng 1 gồm \(N\): Số lượng phần tử ban đầu trong mảng \(A[]\)
  • Dòng thứ 2 gồm \(N\) phần tử ban đầu của mảng \(A[]\)
  • Dòng 3 gồm số lượng thao tác \(Q\)
  • \(Q\) dòng tiếp theo mỗi dòng mô tả 1 thao tác, trong đó nếu là thao tác 1 và 2 thì có thêm phần tử \(X\).

Constraints

  • \(1 \le N \le 10^5\)
  • \(1 \le Q \le 10000\)
  • \(0 \le A[i], X \le 10^6\)

Output

  • In ra kết quả với thao tác 3 và 4.

Example

Test 1

Input
10
24 31 49 65 57 77 7 81 77 79
10
2 60
2 7
3
3
2 45
1 16
4
3
1 6
1 8
Output
24
24
81
16

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.