Số thân thiết
Point: 100.0
Time limit: 1.0s
Memory limit: 64 M
Input:
stdin
Output:
stdout
Authors:
Problem type
Toán: Số học
Ngôn ngữ cho phép
C, C#, C++, Java, Pascal, Python, Text
Một cặp số được gọi là thân thiết nếu số này bằng tổng tất cả các ước thực sự của số kia và ngược lại (các ước thực sự của một số là các ước số nguyên dương bé hơn chính nó).
VD: 220 và 284 là cặp số thân thiết vì tổng các ước số của 220 là: 1+2+4+5+10+11+20+22+44+55+110=284 và tổng các ước số của 284 là 1+2+4+71+142=220.
Yêu cầu:
- Hãy viết chương trình kiểm tra xem 2 số nhập vào có phải là số thân thiết hay không. Nếu phải thì in ra YES, ngược lại in ra NO.
Input:
- Một dòng ghi 2 số nguyên a, b (\(0 < a, b <= 10^9\)).
Output:
- Dòng thứ nhất in ra YES nếu a, b là số thân thiết và in ra NO nếu ngược lại.
- Dòng thứ hai ghi ra tổng các ước thực sự của hai số a, b; mỗi giá trị cách nhau một dấu cách trống.
Ví dụ
input1
220 284
output1
YES
284 220
input2
20 12
output2
NO
22 16