Problemas
서로 다른 자연수 A, B에 대하여, A의 진약수(자신을 제외한 약수들)의 합이 B가 되고,
B의 진약수의 합이 A가 될 때 이러한 두 수를 우정수(친화쌍, 친화수, 우애수)라고 한다.
이를테면 220과 284의 쌍이 그 예이다. 220의 진약수는 1, 2, 4, 5, 10, 11, 20, 22, 44, 55, 110로 모두 더하면 284가 된다.
반대로 284의 모든 진약수 1, 2, 4, 71, 142를 모두 더하면 220이 된다.
자기 자신을 제외한 양의 약수, 즉 진약수를 더한 합이 자기 자신이 되는 양의 정수를 완전수라고 한다.
이를테면 6=1+2+3, 28=1+2+4+7+14 이므로 6, 28은 완전수이다.
할일은 두 정수 a, b가 주어지면 a부터 b까지 차례로 증가하면서 발견된는 완전수는 완전수 하나만 출력하고
우정수는 그 쌍이 되는 값과 함께 공백으로 구분하여 출력하는 것이다.
또한 모든 우정수, 완전수의 개수를 구하는 것이다.
즉, 10와 300가 입력되면
10
11
12
13
14
...
298
299
300
로 증가를 한다.
이 때 증가하는 수가 28일때 완전수이므로 28을 출력하고, 220일 때 284와 우정수 이므로 220 284를 출력한다.
또, 284일 때 우정수이므로 284 220을 출력한다.
Entrada
입력의 첫 줄에 양의 정수 a와 b가 공백으로 구분하여 주어진다. (1≤a, b≤10,000)
Salida
첫 줄에 a, b 사이의 우정수, 완전수의 개수를 출력하고,
다음 줄부터 완전수, 우정수의 쌍을 공백으로 구분하여 출력한다.
Ejemplo
10 300
3
28
220 284
284 220
Fuente
pai2