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. sythai (10/13)
  2. tribinh (8/10)
  3. hungeazy08 (7/15)
Trong 7 ngày
  1. ducdung192 (32/44)
  2. caubeioi (28/39)
  3. manhooh (24/66)
Trong 30 ngày
  1. caubeioi (114/176)
  2. manhooh (83/202)
  3. bestsoilvam (64/155)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 38420

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