728x90
1. 정수 내림차순으로 배치하기
문제 설명
함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다.
제한 조건
n은 1이상 8000000000 이하인 자연수입니다.
내 풀이
def solution(n):
x = list(str(n))
x.sort(reverse = True) #list.sort(): 리스트 정렬
answer = int(''.join(x)) # 구분자.join(문자열 리스트): 문자열 리스트 안에 있는 원소들 사이에 구분자를 넣어서 합친 문자열을 반환
return answer
다른 사람 풀이
def solution(n):
return int("".join(sorted(list(str(n)), reverse=True)));
2. 하샤드 수
문제 설명
양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주세요.
내 풀이
def solution(x):
sum = 0
for i in str(x):
sum += int(i)
if x%sum == 0:
answer = True
else:
answer = False
return answer
다른 사람 풀이
def Harshad(n):
return n%sum(int(x) for x in str(n)) == 0
728x90
'PYTHON > 프로그래머스 코딩테스트 연습' 카테고리의 다른 글
[프로그래머스] 파이썬 코딩테스트 연습 LV1(서울에서 김서방 찾기, 나누어 떨어지는 숫자 배열) (2) | 2023.12.08 |
---|---|
[프로그래머스] 파이썬 코딩테스트 연습 LV1(콜라츠 추측, 음양 더하기) (0) | 2023.12.08 |
[프로그래머스] 파이썬 코딩테스트 연습 LV2(최댓값과 최솟값) (3) | 2023.12.04 |
[프로그래머스] 파이썬 코딩테스트 연습 LV1(문자열을 정수로 바꾸기, 두 정수 사이의 합) (2) | 2023.12.01 |
[프로그래머스] 파이썬 코딩테스트 연습 LV1(X만큼 간격이 있는 n개의 숫자, 나머지가 1이 되는 수 찾기) (1) | 2023.11.27 |