적어도 대부분의 배수
문제
다섯 개의 자연수가 있다. 이 수의 적어도 대부분의 배수는 위의 수 중 적어도 세 개로 나누어 지는 가장 작은 자연수이다.
서로 다른 다섯 개의 자연수가 주어질 때, 적어도 대부분의 배수를 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 다섯 개의 자연수가 주어진다. 100보다 작거나 같은 자연수이고, 서로 다른 수이다.
출력
첫째 줄에 적어도 대부분의 배수를 출력한다.
예제 입력 1
30 42 70 35 90
예제 출력 1
210
예제 입력 2
1 2 3 4 5
예제 출력 2
4
예제 입력 3
30 45 23 26 56
예제 출력 3
1170
예제 입력 4
3 14 15 92 65
예제 출력 4
195
정답 코드
list1 = list(map(int, input().split())) # 사용자로부터 입력받은 숫자들을 공백을 기준으로 분리하여 정수 리스트로 만듦
list1.sort() # 리스트를 오름차순으로 정렬
m = list1[2] # 정렬된 리스트에서 세 번째로 큰 수를 변수 m에 저장
while 1: # 무한 반복
count = 0 # m이 list1의 각 요소들로 나누어 떨어지는 횟수를 세는 변수
for i in range(len(list1)): # list1의 모든 요소에 대해 반복
if m % list1[i] == 0: # m이 list1[i]로 나누어 떨어지면
count += 1 # count를 1 증가시킴
if count >= 3: # count가 3 이상이면 (list1의 세 개 이상의 요소들로 m이 나누어 떨어지면)
print(m) # m을 출력하고
break # 반복문을 종료함
else: # 그렇지 않으면 (list1의 세 개 이상의 요소들로 m이 나누어 떨어지지 않으면)
m += 1 # m을 1 증가시킴
'백준' 카테고리의 다른 글
2024.7.7 백준(Python) 9933 민균이의 비밀번호 (0) | 2024.07.07 |
---|---|
2024.7.5 백준(Python) 2033 반올림 (0) | 2024.07.05 |
2024.7.4 백준(Python) 1373 2진수 8진수 (0) | 2024.07.04 |
2024.6.27 백준(Python) 4344 평균은 넘겠지 (0) | 2024.06.27 |
2024.6.27 백준(Python) 1924 2007년 (0) | 2024.06.27 |