모든 챌린지
보통 0명 해결 정답률 0%

가장 큰 소인수

양의 정수를 나누는 가장 큰 소수를 찾으세요.

소수란 1보다 크고 1과 자기 자신 이외의 양의 약수가 없는 정수입니다. n의 가장 큰 소인수를 구하세요. n이 소수라면 n을 반환하세요.

largest_prime_factor(n)을 구현하세요.

입력

n: 소인수를 구할 정수입니다.

출력

가장 큰 소인수를 반환하세요.

제약 조건

2 ≤ n ≤ 10¹². 입력값 1은 소인수가 없으므로 제외됩니다.

예시

예시 1
입력:
n = 84

예상 출력:
expected = 7
입력:
long long n = 84;

예상 출력:
long long expected = 7;
입력:
long n = 84;

예상 출력:
long expected = 7;

설명

84 = 2 × 2 × 3 × 7이므로, 가장 큰 소인수는 7입니다.

예시 2
입력:
n = 13

예상 출력:
expected = 13
입력:
long long n = 13;

예상 출력:
long long expected = 13;
입력:
long n = 13;

예상 출력:
long expected = 13;

설명

13은 소수이므로, 자기 자신이 가장 큰 소인수입니다.

참고 자료

이 문제는 CodeUtility에 맞게 수정되었습니다. 위의 설명과 제한 조건을 따르세요.

다른 사람의 풀이 보기

커뮤니티 솔루션

아직 공개된 풀이가 없습니다. 문제를 풀고 첫 풀이를 공유하세요.