Contents

Develop
2016.09.09 11:16

[c] 셀프 넘버(Self Number) 구하기

조회 수 2275 댓글 1
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

어떤 자연수 n이 있을 때, d(n)을 n의 각 자릿수 숫자들과 n 자신을 더한 숫자라고 정의하자.

예를 들어 d(91) = 9 + 1 + 91 = 101

이 때, n을 d(n)의 제네레이터(generator)라고 한다. 위의 예에서 91은 101의 제네레이터이다.

어떤 숫자들은 하나 이상의 제네레이터를 가지고 있는데, 101의 제네레이터는 91 뿐 아니라 100도 있다.

그런데 반대로, 제네레이터가 없는 숫자들도 있으며, 이런 숫자를 인도의 수학자 Kaprekar가

셀프 넘버(self-number)라 이름 붙였다.

예를 들어 1,3,5,7,9,20,31 은 셀프 넘버 들이다.


1번 문제

1 이상이고 5000 보다 작은 모든 셀프 넘버들의 합을 구하라.


# Self Number.

#include <stdio.h>

int main(){
    int a, b, c, d, res, sum=0;
    int p[5000] = {0,};

    for(int num=1; num<5000; num++){
        //find self number
        a = num / 1000;
        b = (num / 100) % 10;
        c = (num / 10) % 10;
        d = num % 10;
        res = a + b + c + d + num;
        
        if(res < 5000){
            p[res] = 1;
        }
        
        //make sum
        if(p[num] == 0){
            printf("%3d ", num);
            sum += num;
        }
    }
    printf("\nThe sum is %d\n", sum);
    
    return 0;
}



?
  • ?
    baybetube 2018.04.19 17:07
    이야 기막힌 풀이네요. 잘 보고 갑니다.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
301 Develop [ios] 언어, 지역, 국가 설정 가져오기 hooni 2014.05.12 270230
300 Develop [ios] 여러 버전의 Xcode 사용하기 hooni 2022.05.28 683
299 Develop [ios] 오브젝티브C→스위프트, 코드 변환 손쉽게 file hooni 2015.08.07 971
298 Develop [ios] 웹뷰 history.back() ㅋㄷ file hooni 2016.06.27 1916
297 Develop [ios] 유용한 매크로 hooni 2014.03.26 3660
296 Develop [ios] 자주 쓰는 패턴과 API hooni 2013.04.23 17696
295 Develop [ios] 참고할만한 좋은 예제 소스.. hooni 2013.04.23 27375
294 Develop [ios] 최상위 ViewController 가져오기 hooni 2015.10.12 1078
293 Develop [ios] 최신 UI 모음.. (나중에 정리할 것) secret hooni 2013.08.09 0
292 Develop [ios] 카메라 사용 권한 확인해서 분기하는 방법 hooni 2015.02.26 1877
291 Develop [ios] 카테고리 확장 메소드를 찾지 못하는 경우 file hooni 2014.08.08 2012
290 Develop [ios] 커스텀 폰트 사용하기 (Custom Fonts) file hooni 2014.04.30 3144
Board Pagination Prev 1 ... 41 42 43 44 45 46 47 48 49 50 ... 71 Next
/ 71