Cow Pals

면접 대비

시간 제한1초메모리 제한128 MB

요약
S 이상인 수 n 중에서, n의 진약수 합을 m이라 할 때 m의 진약수 합이 다시 n이 되는 가장 작은 쌍을 찾아 n과 m을 출력한다.
난이도

보통10점 중 4점

유형
정수론, 완전 탐색, 수학, 구현
정답자
아직 제출이 없습니다

문제

베시를 비롯한 모든 소는 귀에 RFID 일련번호 태그를 달고 있어, 농부 존이 기계로 소의 수를 셀 수 있습니다.

어떤 소의 cowpal(짝) 은, 그 소가 가진 일련번호의 진약수(자기 자신을 제외한 약수)의 합과 같은 일련번호를 가진 소입니다. 어떤 소는 짝이 없을 수도 있는데, 자신의 진약수 합과 일치하는 일련번호를 가진 소가 존재하지 않는 경우입니다.

두 소는 서로의 일련번호가 각각 상대의 짝이 될 때, 즉 서로가 서로의 짝일 때 superpal(단짝) 이 됩니다. 자기 자신이 자신의 단짝이 되는 소는 제외하고 고려하지 않습니다.

정수 SS (6≤S≤18,0006 \le S \le 18{,}000)가 주어질 때, 일련번호가 SS 이상이면서 단짝이 존재하는 첫 번째 소를 찾으세요.

예를 들어 일련번호 220220의 진약수는 1,2,4,5,10,11,20,22,44,55,1101, 2, 4, 5, 10, 11, 20, 22, 44, 55, 110이고 그 합은 284284입니다. 마찬가지로 284284의 진약수는 1,2,4,71,1421, 2, 4, 71, 142이고 그 합은 220220입니다. 따라서 220220과 284284는 서로 단짝입니다.

입력

  • 첫째 줄: 정수 SS 하나.

출력

  • 첫째 줄: 일련번호가 SS 이상인 첫 번째 단짝 소의 일련번호와 그 소의 짝의 일련번호를, 공백 하나로 구분하여 출력합니다.

예제1

  1. 예제 1

    입력
    206
    
    예상 출력
    220 284