Chef.Yeon
Code Cook
Chef.Yeon
전체 방문자
오늘
어제
  • 분류 전체보기 (230)
    • 게임 개발 (1)
      • Unity (1)
    • Android (27)
      • Kotlin (19)
      • 우아한테크코스 5기 (4)
    • Language (11)
      • 파이썬 (3)
      • Java (7)
    • DB (2)
      • SQL (16)
    • Spring (25)
    • 코딩테스트 (56)
    • Git (1)
    • TIL (85)
    • DevOps (6)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 파이썬
  • SQL
  • spring
  • 코틀린
  • MariaDB
  • 레포지토리
  • 다이나믹 프로그래밍
  • til
  • 프리코스
  • Wil
  • 문자열
  • 우아한테크코스
  • elasticsearch
  • Docker
  • 안드로이드
  • enum
  • 백준
  • rsocket
  • 코틀린 인 액션
  • java
  • 내림차순
  • kotlin
  • webflux
  • 코딩테스트
  • grafana
  • 프로그래머스
  • 에라토스테네스의 체
  • ec2
  • Android
  • kibana

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
Chef.Yeon

Code Cook

코딩테스트

[프로그래머스/파이썬] 하샤드 수

2022. 9. 18. 20:16

문제 설명

양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수 입니다. 자연수 x를 입력받아 x가 하샤드 수 인지 아닌지 검사하는 함수, solution을 완성해주세요

 

제한 조건

  • x는 1이상, 10000 이하인 정수

 

입출력 예

arr return
10 true
12 true
11 false
13 false

 

내 풀이

map을 통해 양의 정수 x를 문자열로 바꾸어 각 요소를 int 타입으로 변환

sum을 통해 리스트 요소 값을 합함

x를 자릿수 합(digit_sum)으로 나눈 나머지가 0이면 True, 아니면 False 반환

def solution(x):
    digit_sum = sum(map(int, str(x)))
    return x % digit_sum == 0

 

다른 사람 풀이

map 을 사용하지 않고 for문을 통해 리스트 생성

def Harshad(n):
    # n은 하샤드 수 인가요?
    return n % sum([int(c) for c in str(n)]) == 0

 

728x90

'코딩테스트' 카테고리의 다른 글

[프로그래머스/파이썬] 문자열을 정수로 바꾸기  (0) 2022.09.19
[프로그래머스/파이썬] 나머지가 1이 되는 수 찾기  (0) 2022.09.19
[프로그래머스/파이썬] 정수 내림차순으로 배치하기  (0) 2022.09.18
[프로그래머스/파이썬] 문자열 내 p와 y의 개수  (0) 2022.09.18
[프로그래머스/파이썬] 자연수 뒤집어 배열로 만들기  (0) 2022.09.18
    '코딩테스트' 카테고리의 다른 글
    • [프로그래머스/파이썬] 문자열을 정수로 바꾸기
    • [프로그래머스/파이썬] 나머지가 1이 되는 수 찾기
    • [프로그래머스/파이썬] 정수 내림차순으로 배치하기
    • [프로그래머스/파이썬] 문자열 내 p와 y의 개수
    Chef.Yeon
    Chef.Yeon
    보기 좋고 깔끔한 코드를 요리하기 위해 노력하고 있습니다.

    티스토리툴바