문제
풀이
반복문을 통해 arr의 모든 원소가 나누어 떨어지는 수를 찾아야 한다.
- 시간을 조금 단축시키기 위해 arr의 최댓값에서 비교 시작
- while 무한 루프를 활용하여 N개의 최소공배수를 찾을 때까지 반복
- 만약 N개의 최소공배수가 등장하면 flag를 통해 확인
코드
모든 수를 확인해야 하므로 수가 커질 수록 오래 걸리는 치명적인 단점이 있으나 해당 문제에서는 정답으로 처리된다.
def solution(arr):
i = max(arr)
while True:
flag = 0
for num in arr:
if i % num != 0:
flag = 1
break
if flag == 0:
return i
i += 1
'알고리즘 연습 > 프로그래머스' 카테고리의 다른 글
[Python - Lv.2] n^2 배열 자르기 (0) | 2024.03.17 |
---|---|
[Python - Lv.2] [1차] 캐시 (0) | 2024.03.16 |
[Python - Lv.2] 할인 행사 (0) | 2024.03.15 |
[Python - Lv.2] 괄호 회전하기 (0) | 2024.03.14 |
[Python - Lv.2] 예상 대진표 (0) | 2024.03.13 |