📝 문제
💡 다섯 개의 자연수가 있다.
이 수의 적어도 대부분의 배수는 위의 수 중 적어도 세 개로 나누어 지는 가장 작은 자연수이다.
서로 다른 다섯 개의 자연수가 주어질 때, 적어도 대부분의 배수를 출력하는 프로그램을 작성하시오.
⚙️ 입력 : 첫째 줄에 다섯 개의 자연수가 주어진다.
100보다 작거나 같은 자연수이고, 서로 다른 수이다.
⚙️ 출력 : 첫째 줄에 적어도 대부분의 배수를 출력한다.
1145번: 적어도 대부분의 배수
첫째 줄에 다섯 개의 자연수가 주어진다. 100보다 작거나 같은 자연수이고, 서로 다른 수이다.
www.acmicpc.net
✅ 풀이
numbers = list(map(int, input().split()))
m = min(numbers)
while True:
cnt = 0
for item in numbers:
if m % item == 0:
cnt += 1
if cnt >= 3:
break
m += 1
print(m)
💡 처음엔 소인수분해를 통해서 풀어보려고 했으나,
너무 경우가 방대해보여서 그냥 하나하나 진행했다.
아마 모든 수가 100이하라 시간 제한에 걸리지 않은 모양이다.
입력된 수들 중 가장 작은 수부터 시작해서 1씩 더해가며
나눠 떨어지는 수가 3개 이상이 되면 멈추도록 했다.