Đọc sách

View as PDF

Submit solution

Points: 0.00 (partial)
Time limit: 1.0s
Memory limit: 256M
Input: stdin
Output: stdout

Problem type
Allowed languages
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Cho ~n~ quyển sách được đánh số từ ~1~ đến ~n~, quyển sách thứ ~i~ có trọng lượng ~w_i~ được sắp xếp thành một chồng với quyển thứ ~1~ ở trên cùng.

Năm 2025, Lucian đặt mục tiêu sẽ đọc sách liên tục trong ~q~ ngày. Ở ngày thứ ~i~, Lucian muốn đọc quyển sách có chỉ số ~p_i~. Và để lấy được quyển sách ra khỏi chồng sách, anh sẽ phải nhấc tất cả các quyển sách nằm trên quyển sách cần đọc lên, lấy quyển sách có chỉ số ~p_i~ ra rồi đặt lại quyển sách này lên trên cùng sau khi đọc xong. Lưu ý, sau quá trình này, các quyển sách vẫn giữ chỉ số ban đầu.

Yêu cầu: Ở mỗi ngày, hãy giúp Lucian tổng trọng lượng sách mà Lucian cần nhấc lên.

Input

Dòng đầu tiên chứa hai số nguyên ~n, q~ số lượng sách và số ngày mà Lucian đọc sách.

Dòng thứ hai chứa ~n~ số nguyên ~w_1, w_2, \dots, w_n~ (với ~1 \leq w_i \leq 10^9~) là trọng lượng của từng quyển sách.

Dòng thứ ba chứa ~q~ số nguyên ~p_1, p_2, \dots, p_q~ (với ~1 \leq p_j \leq n~) là chỉ số của quyển sách mà Lucian sẽ đọc trong từng ngày theo kế hoạch.

Output

In ra ~q~ dòng, mỗi dòng chứa một số nguyên duy nhất là tổng trọng lượng sách mà Lucian cần nhấc lên.

Scoring

  • Subtask ~1~ (chiếm ~20\%~ số điểm): ~1 \leq n, q \leq 5000~.

  • Subtask ~2~ (chiếm ~80\%~ số điểm): ~1 \leq n, q \leq 10^6~.

Sample Input 1

5 4
1 2 3 4 5
2 3 4 5

Sample Output 1

1
3
6
10

Comments

Please read the guidelines before commenting.


There are no comments at the moment.