Điểm:
400 (p)
Thời gian:
2.0s
Bộ nhớ:
512M
Input:
bàn phím
Output:
màn hình
Hôm nay coder
top 1 thế giới nhận lời thách đấu của coder thứ 7 tỉ thế giới solo giải 1 bài toán do giáo sư đưa ra.Bài toán là cho 2 số tự nhiên \(l,r\). Hãy đếm số lượng số nguyên tố giữa chúng.
loay hoay mãi mà vẫn chưa nghĩ ra cách làm trong khi đã sắp xong, các bạn hãy giúp chiến thắng trong cuộc solo này nhé. Nếu giải được thì sẽ chia 1 nửa phần thưởng của cuộc solo này cho các bạn đó !
- Yêu cầu: đếm số lượng số nguyên tố trong đoạn \([l,r]\)
Input
- Dòng đầu tiên chứa số nguyên dương \(q\) là số đoạn \([l,r]\)
- \(q\) dòng tiếp theo mỗi dòng chứa \(2\) số nguyên dương \(l\) và \(r\)
Output
- Gồm \(q\) dòng, dòng thứ \(i\) ghi một số là số các số nguyên tố trong đoạn \([l,r]\) thứ \(i\) đã cho.
Constraints
- \(1 \leq l,r \leq 2 \times 10^8\)
- \(1 \leq q \leq 10^5\)
Scoring
- Subtask \(1\) (\(50\%\) số điểm): \(q \leq 10^3\), \(l\) và \(r \leq 10^7\)
- Subtask \(2\) (\(50\%\) số điểm): \(q \leq 10^5\), \(l\) và \(r \leq 2 \times 10^8\)
Example
Test 1
Input
1
2 5
Output
3
Bình luận
sàng bình thường không acc đâu nhé.
bài dùng sàng gì cho đủ ac a
Bitmassk
có link j ko a
https://www.geeksforgeeks.org/bitwise-sieve/
Click
Sài Atkin thử và mém TLE :V
Anh có thể xem atkin của em UwU -> Sieve benchmark
Hình như đa số trường hợp atkin chạy thua sàng eratos phải k nhỉ ((
Về lí thuyết thì có rất nhiều tiềm năng đê Atkin Sieve vượt mặt Erastothenes Sieve
Nhưng mà rất khó phức tạp để tối ưu, và cái khó nữa là mỗi lần tối ưu thêm một số phương trình hay wheel sieve thì những cái lookup-table để boost cũng khó để xây tiếp 🙁
Đúng rồi 😊 vì xét nhiều, với lại còn nhiều nhân
Phép nhân có thể giảm được anh. Modulo free cũng được
Đơn nhiên rồi , dùng sàng O(n/6 + log(n)) thì ăn ngay ấy mà =))
Mình làm bị ăn tle :v
Sàng nguyên tố + Mảng cộng dồn ăn đc 50% test :)))
Dùng sàng bitmask đi
lên 3*1e8 là sàng thế ăn đb r =))
Cho em gợi ý với :))
sàng bitmassk google đi
cho link đi chứ google không ra à :))
https://www.geeksforgeeks.org/bitwise-sieve/