27.B2. CTDL> bài Số không và số một
Số không và số một
Trong một buổi hẹn hò lãng mạn, FullHouse Dev đã nhận được một thử thách thú vị từ người ấy. Một mảng chỉ toàn số một được đưa ra, và họ phải thực hiện các thao tác trên mảng này để chứng minh tình yêu của mình.
Bài toán
Cho một mảng \(A\) ban đầu chỉ chứa toàn số một. Bạn có thể thực hiện hai loại thao tác:
- Thao tác 1: Cho một chỉ số \(i\), cập nhật giá trị tại \(A[i]\) thành 0.
- Thao tác 2: Cho một số \(K\), in ra vị trí của số một thứ \(K\) trong mảng. Nếu không tồn tại vị trí như vậy, in ra -1.
INPUT FORMAT:
- Dòng đầu tiên chứa số nguyên \(N\) - kích thước của mảng
- Dòng thứ hai chứa số nguyên \(Q\) - số lượng thao tác
- \(Q\) dòng tiếp theo, mỗi dòng mô tả một trong hai loại thao tác:
- Thao tác 1: "0 \(i\)" - cập nhật vị trí \(i\) thành 0
- Thao tác 2: "1 \(K\)" - tìm vị trí của số một thứ \(K\)
OUTPUT FORMAT:
- Với mỗi thao tác loại 2, in ra kết quả trên một dòng mới
Ràng buộc:
- \(1 \leq N \leq 10^5\)
- \(1 \leq Q \leq 10^5\)
- \(1 \leq i \leq N\)
- \(1 \leq K \leq N\)
Ví dụ
INPUT
6
3
1 5
0 2
1 5
OUTPUT
5
6
Giải thích
- Ban đầu mảng \(A\) chứa toàn số 1
- Thao tác 1: Tìm số một thứ 5 → vị trí 5
- Thao tác 2: Cập nhật vị trí 2 thành 0
- Thao tác 3: Tìm số một thứ 5 → vị trí 6 (vì vị trí 2 đã bị đổi thành 0)
Comments