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. hanngocdat (10/24)
  2. quan2728 (4/7)
  3. tranmyhaphuong (4/5)
Trong 7 ngày
  1. hanngocdat (18/39)
  2. quocchinh96bl (17/59)
  3. duckyo123 (16/29)
Trong 30 ngày
  1. caubeioi (130/212)
  2. nhatanh (73/109)
  3. hanngocdat (72/151)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 38312

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