500error
[Cos Pro 1급, Python] 3차 7번 : 카프리카 수 본문
반응형
문제
카프리카 수는 다음을 만족하는 수를 뜻합니다.
- 자신의 제곱수를 둘로 나누어 더한 값이 자기 자신과 같습니다.
- 단, 둘로 나뉜 수는 모두 양수여야 합니다.
예를 들어, 55^2 는 3,025입니다. 3,025는 3과 025, 30과 25, 302와 5로 나눌 수 있습니다. 이때 30+25 = 55이므로 55는 카프리카 수입니다.
자연수 k가 매개변수로 주어질 때, k 이하인 모든 카프리카 수를 배열에 담아 오름차순으로 정렬하여 return 하도록 solution 함수를 작성했습니다. 그러나, 코드 일부분이 잘못되었기 때문에, 코드가 올바르게 동작하지 않습니다. 주어진 코드에서 한 줄만 변경해 모든 입력에 대해 올바르게 동작하도록 수정해주세요.
코드
def solution(k):
answer = []
for i in range(1, k + 1):
square_num = i * i
divisor = 1
while square_num / divisor != 0:
front = square_num // divisor
back = square_num % divisor
divisor *= 10
if back != 0 and front != 0:
if front + back == i:
answer.append(i)
return answer
k = 500
ret = solution(k)
print("solution 함수의 반환 값은", ret, "입니다.")
반응형
'알고리즘 > 파이썬' 카테고리의 다른 글
[Cos Pro 1급, Python] 3차 9번 : 팝업 스토어를 열 최적의 날짜 (0) | 2024.02.29 |
---|---|
[Cos Pro 1급, Python] 3차 8번 : 선풍기를 몇대 사야 하나요 (0) | 2024.02.28 |
[Cos Pro 1급, Python] 3차 6번 : 소수의 합으로 표현하기 (0) | 2024.02.28 |
[Cos Pro 1급, Python] 3차 5번 : 전광판 문구 출력 (0) | 2024.02.28 |
[Cos Pro 1급, Python] 3차 4번 : 중복 문자열 이어붙이기 (0) | 2024.02.28 |
Comments