반응형
문제(1) 소인수분해 설명
소인수 분해란 소수가 아닌 합성수를 소수의 곱으로 나타내는 방법을 말한다.
(입력된 숫자 n이 i로 나누어지면 해당 i는 n의 인수에 해당하며 n = n//i로 저장하여 이 과정을 반복한다.)
코드
n = int(input("자연수 입력 :"))
i = 2
while i <= n :
while 1:
if n%i == 0:
print(i, end=" ")
n //=i
else :
break
i += 1
문제(2) 최소 공배수 설명
최소 공배수란 2개의 숫자의 배수 중에서 공통된 가장 작은 배수를 의미한다.
(2개의 숫자가 모두 나눠질 수 있는 첫 번째로 나오는 수를 구한다. 최소 공배수는 두 수의 곱보다 작거나 같을 수도 있다.)
코드
def f(a, b):
i = 1
while i <= a*b :
if i%a==0 and i%b==0 :
print(f'{a}와{b}의 최소 공배수는 {i}')
break
i += 1
n, m = map(int, input().split())
f(n, m)
반응형
'Algorithm' 카테고리의 다른 글
이것이 코딩테스트다 - 구현 파트 (0) | 2022.01.27 |
---|---|
[python] 조합(nCr) 반복문과 재귀 호출을 통해 구하기 (0) | 2022.01.18 |
[python] 반복문과 재귀 호출을 사용하여 두 수의 최대 공약수 구하기 (0) | 2022.01.18 |
[python] 파이썬을 이용해 소수 추출하기 / 에라토스테네스의 체 방법으로 추출하기 (0) | 2022.01.18 |
[python] 파이썬을 이용해 정수의 약수와 소수 구하기 (0) | 2022.01.18 |