본문 바로가기

알고리즘/python

[python/파이썬] 백준 1145 적어도 대부분의 배수

반응형

[문제 출처]

https://www.acmicpc.net/problem/1145

 

1145번: 적어도 대부분의 배수

첫째 줄에 다섯 개의 자연수가 주어진다. 100보다 작거나 같은 자연수이고, 서로 다른 수이다.

www.acmicpc.net

 

 

[문제 풀이]

 

다섯 개의 자연수가 주어질 때, 이 수들 중 적어도 세 개의 수의 배수가 되는 수 중에 가장 작은 수를 구하는 문제이다.

 

주어진 자연수의 배수가 찾기 위해서 while문을 통해 1씩 수를 증가시키며 확인한다.

시작하는 수는 주어진 수 중에 가장 작은 수에서부터 시작한다.

그 후 1씩 증가시키며 주어진 수들로 나눠지는지 확인한 후 나눠진다면 cnt 값을 증가시켜 cnt 값이 3 이상일 때 while문을 멈추고 해당하는 수를 출력한다.

 

num = list(map(int,input().split()))

result = min(num)
while True:
  cnt = 0
  for i in num:
    if result % i == 0:
      cnt += 1
  if cnt > 2:
    break
  result += 1

print(result)
반응형