본문 바로가기

Android ᙏ̤̫͚/차근차근 JAVA

[백준 4673번] 셀프 넘버

 

BOJ4673

 

4673번: 셀프 넘버

셀프 넘버는 1949년 인도 수학자 D.R. Kaprekar가 이름 붙였다. 양의 정수 n에 대해서 d(n)을 n과 n의 각 자리수를 더하는 함수라고 정의하자. 예를 들어, d(75) = 75+7+5 = 87이다. 양의 정수 n이 주어졌을 때,

www.acmicpc.net

 

[문제]

10,000보다 작거나 같은 셀프 넘버를 한 줄에 하나씩 출력하는 프로그램 작성

 

셀프넘버

- 양의 정수 n에 대해서 n과 n의 각 자리 수를 더하는 함수로 정의할 때, n은 d(n)의 생성자라고 함.
- 셀프 넘버 : 생성자가 없는 수

- ex) d(75) = 75 + 7 + 5 = 87

 

<6단계> 함수

<알고리즘 분류> 구현

 

[input]

없음

[output]

10,000보다 작거나 같은 셀프 넘버를 한 줄에 하나씩 증가하는 순서로 print

 


 

 


 

[풀이 방법]

  1. d 함수 내용 작성

  2. sum 변수에 인수로 받은 number 값 저장한 후, 각 자리수의 합을 저장

  3. sum이 10,000보다 작거나 같은 경우 isSelfNumber 배열에 false값 저장

  4. isSelfNumber 배열 값이 true인 경우 한 줄에 하나씩 모두 print

 


 

성공 코드

'Android ᙏ̤̫͚ > 차근차근 JAVA' 카테고리의 다른 글

[백준 11654번] 아스키 코드  (0) 2021.01.30
[백준 1065번] 한수  (0) 2021.01.30
[백준 15596번] 정수 N개의 합  (0) 2021.01.30
[백준 4344번] 평균은 넘겠지  (0) 2021.01.29
[백준 8958번] OX퀴즈  (0) 2021.01.29