알고리즘 문제 해결/Project Euler

[수학, 브루트 포스] 프로젝트 오일러 3번 문제

jmkimmessi 2021. 10. 7. 00:00
반응형

https://euler.synap.co.kr/problem=3

 

3번 문제

가장 큰 소인수 구하기

euler.synap.co.kr

 

문제 해결 알고리즘

 

2부터 N까지 모든 수들을 나눠준다. 이 때 또 그 수로 나눌 수 있다면 나눈다. 나눌 때마다 나눈 수를 출력한다.

 

소스 코드

 

#include <bits/stdc++.h>
using namespace std;


int main(){
  int N; cin >> N;

  if(N == 1) return 0;

  for(int i=2;i<=N;i++){
    while(N%i==0){
      N/=i; 
      cout << i << '\n';
    }
    if(N == 1) break; 
  }
}

 

정답

더보기

 

6857

반응형