Deprecated

[programmers] 프로그래머스 하샤드 수(Python)

HelloMinchan 2020. 6. 15. 17:33

(주)그렙

[programmers] 프로그래머스 하샤드 수

(Python)

(글쓴날 : 2020.06.15)

 


* programmers, 프로그래머스 문제 Python 언어 풀이입니다.

* 소스 코드의 저작권은 글쓴이에게 있습니다.


 

 

프로그래머스 하샤드 수


1) 문제

문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/12947

 

코딩테스트 연습 - 하샤드 수

양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하�

programmers.co.kr


2) 풀이 과정

* 시간 복잡도 : O(n)

 

주어진 양의 정수 x가 하샤드 수인지 아닌지 판별하는 문제입니다.

하샤드 수란 x의 자릿수의 합으로 x가 나누어떨어지는 수입니다.

 

저의 경우, Python을 사용했습니다.

우선, x를 문자열로 바꾼 뒤 각 원소를 정수로 바꾸어 자릿수의 합을 구하였고, x를 나누었을 때 나누어떨어지는지 확인하여 문제를 해결했습니다.


3) 코드

 

* Python 코드

1
2
3
4
5
def solution(x):
    if x % sum(map(intstr(x))):
        return False
    
    return True