freeParksey
밥세공기
freeParksey
전체 방문자
오늘
어제
  • 분류 전체보기 (150)
    • JAVA (32)
      • 자바스터디 (21)
      • Java in action (6)
      • OOP (1)
      • test (2)
    • 알고리즘 문제 (51)
      • 백준 (49)
    • C (Atmega128) (7)
    • 인공지능 (11)
    • 운영체제 (8)
    • 디자인패턴 (5)
    • 잡다한것 (2)
    • 사용기 (3)
      • 도커 (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • java
  • 그리드
  • Collection
  • 우아한테크코스
  • 백트래킹
  • generic
  • 프리코스
  • 우테코
  • 3주차
  • 집합과 맵
  • 동작 파라미터화
  • 자바스터디
  • 운영체제
  • Thread #JVM #자바스터디 #
  • 백트랙킹
  • Iterator
  • 딥러닝
  • 후기
  • 백준
  • 자바
  • dto 변환 위치
  • 분류
  • 재귀기초
  • 스트림
  • 동적계획법
  • Python
  • 알고리즘
  • dto 변환
  • 상속
  • Thread 동작

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
freeParksey

밥세공기

알고리즘 문제/백준

[백준-11653] 소인수분해

2022. 1. 16. 14:15

소인수분해

문제

정수 N이 주어졌을 때, 소인수분해하는 프로그램을 작성하시오.

입력

첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다.

출력

N의 소인수분해 결과를 한 줄에 하나씩 오름차순으로 출력한다. N이 1인 경우 아무것도 출력하지 않는다.

예제 입력 1

72

예제 출력 1

2
2
2
3
3

예제 입력 2

3

예제 출력 2

3

예제 입력 3

6

예제 출력 3

2
3

예제 입력 4

2

예제 출력 4

2

예제 입력 5

9991

예제 출력 5

97
103

문제 해석

  • 입력받은 숫자 N을 소인수들의 곱으로 표현한다.

 

해결

  • 정수 N에 대하여 √N 을 기준으로 나눠지는 수와 맞대응하는 숫자가 있다.
    • 6 = 2 X 3 / 15 = 3 X 5
  • √N보다 낮은 정수의 경우 소인수 2부터 시작하여 0이면 같은 수로 계속 나누고 나눠지지 않을 때 다음 소인수로 나눠 찾습니다.
  • 만약 √N이하의 정수에 소인수가 없을 경우 해당 수는 소수입니다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
N = int(input())
forN = int(N**0.5)
index = 2
if N != 1:
    while(index <= forN):
        if N == 0:
            break
        if N % index == 0:
            print(index)
            N //= index
        else:
            index += 1
if N > 1:
    print(N)

 

저작자표시 비영리 변경금지 (새창열림)

'알고리즘 문제 > 백준' 카테고리의 다른 글

[백준 - 11729] 하노이 탑 이동 순서  (0) 2022.04.26
[백준-10870] 피보나치 수 5  (0) 2022.02.05
[백준-10872] 팩토리얼  (0) 2022.02.05
[백준-3009] 네 번째 점  (0) 2022.02.05
[백준-1011] Fly me to the Alpha Centauri  (0) 2022.01.16
    '알고리즘 문제/백준' 카테고리의 다른 글
    • [백준-10870] 피보나치 수 5
    • [백준-10872] 팩토리얼
    • [백준-3009] 네 번째 점
    • [백준-1011] Fly me to the Alpha Centauri
    freeParksey
    freeParksey
    Github: https://github.com/parksey

    티스토리툴바