Link Sub: http://www.spoj.com/PTIT/problems/SUMDIV/
Người Gửi: Darkness
- Problem:
Tính tổng các ước của số n (n≤10^12).Input
Dòng đầu chứa số bộ test.
Các dòng sau, mỗi dòng chứa 1 số nguyên dương n (n≤10^12).
Output
Mỗi test in trên 1 dòng chứa 1 số nguyên là tổng các ước của test tương ứng.
Example:
Mỗi test in trên 1 dòng chứa 1 số nguyên là tổng các ước của test tương ứng.
Input
2
5
6
Output:
6
12
- Solution:
- Tìm các ước trong khoảng i:[1, sqrt(n)). - Với mỗi giá trị tìm được ta có 2 ước là i và n/i;
Chú ý nếu là số chính phương thì ta có thêm một ước là sqrt (n).