TRUY VẤN TRÊN TẬP HỢP

Chỉ được dụng Python để giải bài toán này

Cho số nguyên dương ~n~ và hai tập hợp ~A, B~. Tập hợp ~A~ gồm các số nguyên từ ~1~ đến ~n~, tập hợp ~B~ gồm các số nguyên từ ~n+1~ đến ~2n~. Tập hợp ~C~ bao gồm các giá trị ~a+b~ trong đó ~a~ thuộc tập ~A~ và ~b~ thuộc tập ~B~. Lưu ý trong ~C~ có thể có các phần tử giống nhau.

Ví dụ với ~n=3 ~ thì ~A={1,2,3}~ và ~B={4,5,6};~ tập ~C={5,6,6,7,7,7,8,8,9}~.

Bạn được cho ~m~ câu hỏi trên tập ~C~, mỗi câu hỏi có dạng: Có bao nhiêu số ~q~ trong tập ~C~.

Dữ liệu vào:

  • Dòng đầu tiên ghi số nguyên dương ~n,m~ ~(1≤m≤10^5)~
  • ~m~ dòng tiếp theo mỗi dòng ghi một số nguyên ~q~ ~(1≤q≤3*n)~

Kết quả: Mỗi số ~q~ theo thứ tự vào trong Input, hãy cho biết trong tập ~C~ có bao nhiêu số ~q~.

Ví dụ:

Input

4 3
4
6
10 

Output

0
1
3 

Ràng buộc:

  • Có 80% số test có ~1≤n≤1000~
  • Có 10% số test khác có ~1≤n≤10^5~
  • Có 10% số test còn lại có ~1≤n≤10^9~

Bạn cần đăng nhập để nộp bài

hpcode.edu.vn
Code tích cực
Trong 24h
  1. topteo1243 (18/22)
  2. cao_thanh_dat (6/11)
  3. nsduc83 (4/22)
Trong 7 ngày
  1. caubeioi (39/63)
  2. nhatanh (33/47)
  3. dat092010 (24/35)
Trong 30 ngày
  1. caubeioi (179/327)
  2. phamnhi (153/428)
  3. bestsoilvam (151/248)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 38226

Lưu Hải Phong - 2020
[email protected]