728x90
반응형
https://www.acmicpc.net/problem/11653
이 문제는 입력 받은 수를 소인수분해 하는 문제이고, 소인수분해 결과를 한 줄에 하나씩 오름차순으로 출력해야 한다.
소인수분해를 못하는 사람은 없을 꺼라고 생각하고, 코드를 바로 보면
우선, 큰 while문 안에 또 다른 while문을 넣었다.
첫번째 while 조건은 입력 받은 수가 1이 될 때까지 반복문을 돌리는 것이고,
두번째 while 조건은 나누는 수(d)가 입력받은 수(a)를 나누었을 때, 나머지가 0이 되도록 d를 1씩 증가시키면서, a를 나누었을 때 나머지가 0이 될 때 까지 반복문을 돌리는 것이다.
while(a != 1):
d = 2
while(True):
if a % d == 0:
a = a //d
print(d)
break
else:
d += 1
반응형
'Python > Baekjoon' 카테고리의 다른 글
백준 1934번 문제 풀이 - 공부 하는 도비 (0) | 2021.11.01 |
---|---|
백준 5355번 문제 풀이 - 공부하는 도비 (0) | 2021.10.24 |
백준 1032번 문제 풀이 - 공부하는 도비 (0) | 2021.10.22 |
백준 2839번 문제 풀이 - 공부하는 도비 (0) | 2021.08.20 |
백준 1193번 문제 풀이 - 공부하는 도비 (0) | 2021.01.23 |