Java/백준알고리즘

백준알고리즘 #4673 셀프 넘버 java (단계별로 풀어보기)

Sehyeok20 2020. 2. 11. 18:06
반응형

백준알고리즘 #4673 셀프넘버

먼저 test 라는 함수를 만든 후 입력받은 숫자 n으로 d(n)을 만드는 알고리즘을 짠다.

d(n)을 구하는 함수

그런다음 a배열을 생성해 1 ~ 10000까지의 수를 이 함수에 대입하여 본다.

각 숫자들의 d(n)은 result 변수에 담고, result 변수에 담긴 수가 10000 이하라면

a[] 배열의 result 번째 숫자가 1이 되도록 한다.

a[result] 의 결과가 1이라면 a배열의 result 번째 수는 생성자가 있는 숫자가 되고

a[result] 의 결과가 0이라면 a배열의 result 번째 수는 생성자가 없는 셀프 넘버가 된다.

 

전체 코드

따라서 이 a 배열에서 값이 0인 모든 배열 넘버를 출력하면 각 배열 넘버가 셀프 넘버가 된다.

출력값

반응형