728x90
https://www.acmicpc.net/problem/11653
최초풀이
for문을 활용하여 인수를 찾아줍니다.
#include <iostream>
#include <vector>
using namespace std;
// 다른 공약수문제에서 많이 사용되는 기초문제
int main() {
int N;
vector<int>v;
cin >> N;
for (int i = 2; i <= N; i++) {
if (N % i == 0) {
N /= i;// 몫을 갱신해 주어야함
v.push_back(i);
i = 1;// 중복되는 인수가 있을 수 있기 때문에 인수발견 후 초기화
}
}
for (auto elem : v)
cout << elem << '\n';
return 0;
}
728x90
'🥇Baekjoon Solutions > 정수론' 카테고리의 다른 글
[C++] 백준 1644번: 소수의 연속합 (0) | 2021.07.31 |
---|---|
[C++] 백준 2725번: 보이는 점의 개수 (0) | 2021.07.31 |
[C++] 백준 2824번: 최대공약수 (0) | 2021.07.30 |
[C++] 백준 14476번: 최대공약수 하나 빼기 (0) | 2021.07.30 |
[C++] 백준 1735번: 분수 합 (0) | 2021.07.29 |
댓글