Gửi bài giải
Điểm:
0,06 (OI)
Giới hạn thời gian:
0.38s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Nguồn bài:
Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch
Trong số học, số phong phú là các số mà tổng các ước số của số đó (không kể chính nó) lớn hơn số đó. Ví dụ, số ~12~ có tổng các ước số (không kể ~12)~ là ~1 + 2 + 3 + 4 + 6 = 16 > 12~. Do đó ~12~ là một số phong phú.
Bạn hãy lập trình đếm xem có bao nhiêu số phong phú trong đoạn ~[L~, ~R]~.
Input
- Gồm ~2~ số ~L~, ~R~ ~(1 \le L \le R \le 10^{5})~
Output
- Gồm ~1~ số nguyên duy nhất là số số phong phú trong đoạn ~[L~, ~R]~.
Giới hạn
- Có ~50\%~ số test có ~1 \le L \le R \le 10^{3}~
Sample Input
1 50
Sample Output
9
Note
- Từ ~1~ đến ~50~ có ~9~ số phong phú là: ~12~, ~18~, ~20~, ~24~, ~30~, ~36~, ~40~, ~42~, ~48~
Bình luận
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.
bốc phét ít thôi
bài này chạy từ 2->sqrt(n) thôi, ban đầu set biến tính tổng ước = 1, do với 1 số nguyên bất kì nếu biết 1 ước của nó sẽ biet dc ước còn lại, ví dụ số nguyên n có ước là i thì ước còn lại của nó là n / i, rồi check i != n / i, sau đó ae tự cài đặt là ok (cách này là của c++, không chắc mấy ngôn ngữ khác làm dc không)
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.
mọi người dùng sàng ước nhá:D def sub(n): result = [1] * (n + 1)
for i in range(2, n//2 + 1): for j in range(i * 2, n + 1, i):result[j] += i return result
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.
em hỏi :))
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.