출처 :
https://www.acmicpc.net/problem/11653
11653번: 소인수분해
첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다.
www.acmicpc.net
풀이:
n = int(input())
for i in range(2,n+1):
while 1:
if n % i == 0:
n = n // i
print(i)
else :
break
나름 신박하게 잘 했다 생각했는데 다 비슷하게 푼거 같다...
계속 머리속에 있던 생각은 for 문을 써서 그 안에서 계속 루프를 돌려야한다 ! 를 생각했다.
그래서 while 을 항상 설정해주고
계속 i로 나누고 나누면 나눈 i를 출력했다.
그리고 나눠지지않으면 멈춰서 다음 i 로 넘어가서 정답에 도달했따.
'코딩테스트 > 기초' 카테고리의 다른 글
백준 9020 골드바흐의 추측 - python (0) | 2022.01.11 |
---|---|
백준 2948 베르트랑 공준 - Python (0) | 2022.01.10 |
백준 2581 소수 - python (0) | 2022.01.08 |
백준 1978 소수찾기 - Python (3) | 2022.01.08 |
백준 10757 큰 수 a+b -python (0) | 2022.01.08 |