-
[BOJ 11689, Python 3] GCD(n, k) = 1알고리즘/BOJ 2021. 9. 6. 11:35반응형
https://www.acmicpc.net/problem/11689
풀이
GCD(n, k) = 1을 만족하는 자연수란 n과 k가 서로소 관계에 있다는 뜻입니다.
그래서 1부터 n사이에 n과 서로소인 개수를 구하는 공식은 오일러 피 함수가 있으므로 이 공식을 이용하여 개수를 찾아주면 되는 문제입니다.
자세한 설명은 https://ohgym.tistory.com/14 나 https://blog.chodaeho.com/posts/2021/eulers-totient-function/ 블로그를 참조하면 됩니다.
코드
12345678910n = int(input())ans = ni = 2while i ** 2 <= n:if n % i == 0:ans *= (1 - (1/i))while not n % i: n //= ii += 1if n > 1: ans *= 1 - 1 / nprint(round(ans))cs 반응형'알고리즘 > BOJ' 카테고리의 다른 글
[BOJ 15906, Python 3] 변신 이동 게임 (0) 2021.09.08 [BOJ 22984, Python 3] 반짝반짝 2 (0) 2021.09.06 [BOJ 22988, Python 3] 재활용 캠페인 (0) 2021.09.04 [BOJ 22981, Python 3] 휴먼 파이프라인 (0) 2021.09.04 [BOJ 13334, Python 3] 철로 (0) 2021.09.03