Điểm:
300 (p)
Thời gian:
1.0s
Bộ nhớ:
1023M
Input:
bàn phím
Output:
màn hình
Cho số nguyên dương \(N (N \leq 2∗10^9)\).
Yêu cầu: Đếm số lượng ước số của \(N\) và tổng các ước số của \(N\).
Input
- Số nguyên dương \(N\)
Output
- Chứa hai số nguyên là sô lượng ước số và tổng các ước của \(N\)
Example
Test 1
Input
10
Output
4 18
Note
- Số \(10\) có ước là \(1\) \(2\) \(5\) \(10\) và tổng \(1 + 2 + 5 + 10 =18\)
Bình luận
Ko cần làm như thế
include <bits/stdc++.h>
using namespace std;
ll n,dem = 0,tong = 0;
int main(){
cin >> n;
ll h = sqrt(n);
for (ll i = 1;i <= h;i++)
if (n % i == 0){
dem+=2;
tong+=i + n/i;
}
if (h*h == n){
dem--;
tong-=h;
}
cout << dem << " " << tong;
return 0;
}
9 bình luận nữa