Tổng điểm đội thi
Xem PDF
Điểm:
22
Thời gian:
1.0s
Bộ nhớ:
256M
Input:
bàn phím
Output:
màn hình
Có \(n\) cuộc thi được đánh số từ 1 đến \(n\) và \(m\) đội thi được đánh số từ 1 đến \(m\). Cuộc thi thứ \(i\) có số điểm là \(a_i\): bất kỳ đội nào tham gia cuộc thi thứ \(i\) đều nhận được \(a_i\) điểm từ cuộc thi đó. Đội thứ \(i\) tham gia đúng \(c_i\) cuộc thi, lần lượt là \(x_{i,1}, x_{i,2}, \ldots, x_{i,c_i}\) (các cuộc thi này đôi một phân biệt).
Cần xử lý \(Q\) truy vấn, mỗi truy vấn thuộc một trong hai loại:
- Loại 1:
1 p val— thay đổi số điểm của cuộc thi thứ \(p\) thành \(val\). - Loại 2:
2 t— hỏi tổng số điểm hiện tại của đội thứ \(t\) (tổng điểm của tất cả các cuộc thi mà đội \(t\) tham gia, tính theo số điểm mới nhất tại thời điểm truy vấn).
Yêu cầu
Với mỗi truy vấn loại 2, hãy đưa ra tổng số điểm hiện tại của đội tương ứng.
Dữ liệu vào
Từ tệp tin văn bản CUOCTHI.INP, gồm:
- Dòng 1: hai số nguyên \(n, m\).
- Dòng 2: \(n\) số nguyên \(a_1, a_2, \ldots, a_n\).
- \(m\) dòng tiếp theo, dòng thứ \(i\) chứa số nguyên \(c_i\), tiếp theo là \(c_i\) số nguyên \(x_{i,1}, \ldots, x_{i,c_i}\) (nếu \(c_i = 0\) thì dòng chỉ chứa số 0).
- Dòng tiếp theo: số nguyên \(Q\).
- \(Q\) dòng tiếp theo, mỗi dòng mô tả một truy vấn theo một trong hai dạng nêu trên.
Dữ liệu ra
Ghi ra tệp tin văn bản CUOCTHI.OUT: với mỗi truy vấn loại 2 (theo đúng thứ tự xuất hiện trong dữ liệu vào), in ra một dòng chứa kết quả tương ứng.
Ràng buộc
- \(1 \le n, m \le 10^5\).
- \(0 \le c_i\) và \(\displaystyle\sum_{i=1}^{m} c_i \le 3 \times 10^5\).
- \(1 \le x_{i,j} \le n\).
- \(1 \le a_i, val \le 10^9\).
- \(1 \le Q \le 10^5\); \(1 \le p \le n\); \(1 \le t \le m\).
Ví dụ
CUOCTHI.INP
3 2
10 20 30
2 1 2
2 2 3
5
2 1
2 2
1 2 100
2 1
2 2
CUOCTHI.OUT
30
50
110
130
Giải thích:
- Đội 1 tham gia cuộc thi {1, 2}: điểm ban đầu \(= a_1+a_2 = 10+20 = 30\).
- Đội 2 tham gia cuộc thi {2, 3}: điểm ban đầu \(= a_2+a_3 = 20+30 = 50\).
- Sau truy vấn
1 2 100, cuộc thi 2 đổi điểm thành 100. - Đội 1 lúc này \(= a_1+a_2 = 10+100 = 110\); đội 2 lúc này \(= a_2+a_3 = 100+30 = 130\).
Bình luận