반응형

[ Contents ]
1. 문제 (링크 참조)
1145번: 적어도 대부분의 배수
첫째 줄에 다섯 개의 자연수가 주어진다. 100보다 작거나 같은 자연수이고, 서로 다른 수이다.
www.acmicpc.net
2. 문제 풀이
서로 다른 5개의 숫자가 주어집니다. 적어도 3개 이상의 수가 약수로 포함되는 최소의 수를 찾아야 합니다.
2022.01.16 - [Algorithm] - [Algorithm] 브루트 포스(Brute Force)는 노가다 기법?
[Algorithm] 브루트 포스(Brute Force)는 노가다 기법?
[ Contents ] 1. 브루트 포스란? Brute(짐승 같은, 난폭한) + Force(힘, 폭력)의 합성어입니다. 무식하게 푸는 기법으로, '노가다'에 가까운 접근법입니다. 모든 경우의 수를 시험해보며 문제를 해결합니
star7sss.tistory.com
5개 중에서 3개를 뽑아서, 모두 곱한 다음 최소인 수를 고르면 되겠지? 하면 틀립니다. 예제 입력 2를 보면 1, 2, 3, 4, 5 중 1, 2, 4를 선택하면 8이 아니라, 4입니다.
따라서 수학적으로 접근하려 하지말고, 무식하게 찾는 게 오히려 빠르고 쉽습니다.
3. 코드
import sys
input = sys.stdin.readline
# 입력
numlist = list(map(int, input().split()))
# 약수가 3개 이상인 수 찾기
num = 2
while True:
cnt = 0
for i in numlist:
if num % i == 0:
cnt += 1
if cnt >= 3:
print(num)
break
num += 1
2부터 1씩 올리면서, 약수가 3개 이상인 수를 찾습니다.

반응형
'Algorithm' 카테고리의 다른 글
[구현/수학] 백준 8674 Tabliczka - 파이썬(Python) (1) | 2022.10.05 |
---|---|
[구현/수학] 백준 24083 短針 (Hour Hand) - 파이썬(Python) (1) | 2022.10.04 |
[구현/수학] 백준 21633 Bank Transfer - 파이썬(Python) (0) | 2022.10.02 |
[구현/수학] 백준 20233 Bicycle - 파이썬(Python) (0) | 2022.10.01 |
[그리디/Greedy] 백준 14469 소가 길을 건너간 이유 3 - 파이썬(Python) (0) | 2022.09.30 |
댓글