전체 글(79)
-
[BOJ 10438] 페리 수열의 합
페리 수열 Fn은 0부터 1까지 분모가 n이하인 모든 기약분수들을 오름차순으로 배열한 수열이다. 예를 들어 n=3 이라면 수열은 다음과 같다. 01 13 12 23 11 페리 수열은 이전 수열에 새로운 기약분수가 추가되며 수열이 만들어진다. 페리 수열의 a번째 항을 h1k1, a+2번째 항을 h2k2, a+1번째 항을 h3k3이라 하면 h3=h1+h2, k3=k1+k2 이다. 이 성질을 이용해 이 다음 페리 수열에 등장할 분수를 알 수 있다. 페리 수열의 크기를 |Fn|이..
2021.11.20 -
중복 조합
a1+a2+...+ak=d이고 0≤ai≤m인 a에 관한 순서쌍의 개수를 찾고싶다! 예를 들어서 다음 경우를 보자. a+b+c=15이고 m=9 기본적으로 전체 경우에서 망한 경우를 뺀다고 생각해보면 전체 경우는 3H15이다. 망한 경우는 a또는 b또는 c가 10이상인 경우로 a가 10이상이라고 생각한다면 a′+b+c=5 즉, 3H5가 되고 b ,c도 마찬가지이므로 3C1을 곱하여 망한 경우는 3C1∗3H5가 된다. 따라서 구하고자 하는 경우의 수는 3H15−3C1∗3H5=73이다. 이제 여러분은 계산할..
2021.11.07 -
정n각형의 대각선
n이 자연수인 k에 대해 n=2k+1임을 만족한다고 하자. 이때 정n각형의 한 꼭짓점을 a1이라 하고 반시계 방향으로 꼭짓점을 ai (i=2,3,...,n) 라고 하자. 이때 →a1a2를 →a, →a1an을 →b라고 하자. 정n각형의 한 변의 길이는 1이며 ¯a1ai=ri−2라고 하자. 이때 →ak+1ak+2를 →a, →b로 나타내보자. 이 문제 해결의 아이디어는 순서대로 내려가는 것이다. 위 그림에서 →b의 한칸 아래인 $\overrigh..
2021.10.09 -
수열의 나머지
서로소인 자연수 a,b에 대해 수열 Fn=aFn−1+bFn−2에 대해 초항 F0=0,F1=1이면 gcd(Fn,Fm)=Fgcd(n,m)이다. 이것을 증명해보자. Fm|Fqm 임의의 정수 n과 p에 대해 F_{n-2} \equiv 0 \mod{p}라고 하자. F_{n} \equiv aF_{n-1} \pmod{p} F_{2}=a이므로 다음과 같이 바꿔쓸 수 있다. F_{n} \equiv F_{2}F_{n-1} \pmod{p} 일반적으로 다음과 같이 쓸 수 있다.(이 아래에 나올 성질을 참고하자.) F_{n+k} \equiv F_{2+k}F_{n-1} \pmod{p} k=n-4라고 하자. $F_{2n-4..
2021.09.19 -
[BOJ 11397] 피보나미얼
피보나치 수열 f_n에 대해 F_{n}=f_{1}f_{2}f_{3} \cdot\cdot\cdot f_{n} 으로 정의되는 수열 F_{n}이 어떤 수로 몇 번 나누어 떨어지는지 계산하는 문제이다. 이 문제의 핵심은 \gcd(f_{n},f_{m})=f_{\gcd(n,m)}임을 이용하는 것이다. 주어진 수가 n이라 하고 직접 계산해보자. 또, F_{n}이 2로 나누어 떨어지는 횟수를 g_2라고 하자. f_3은 2이다. 그럼 f_{3m}은 전부 2의 배수가 됨을 알 수 있다. g_{2}+=\lfloor \frac{n}{3} \rfloor f_6은 8이고 6은 3의 배수로 이미 한번 센 수를 빼면 2는 2개가 된다. g_{2}+=$2\cdot \lfloor \frac..
2021.09.19 -
[BOJ 1770] 배수와 약수의 개수
문제는 다음과 같습니다. 양의 정수 n이 주어졌을 때, 다음 두 조건을 만족하는 양의 정수 x의 개수를 구해보자. - x는 n의 배수이다 - x의 양의 약수의 개수는 n개이다. x가 n의 배수이니 적어도 x는 n의 소인수들을 모두 갖고 있습니다. n=p^{c}(p는 임의의 소수, c는 임의의 자연수)라고 해봅시다. 만약 임의의 소수 q에 대해 x=p^{p^{c-1}-1}q^{p-1}이라면 q를 마음껏 정할 수 있기 때문에 경우가 무한개가 될 것입니다. 이를 만족하기 위해서는 p^{c-1}-1 \ge c이면 됩니다. 가장 작은 소수인 2에 대해서 생각해봅시다. 2^{c-1} \ge c+1을 만족해야 합니다. 이 부등식은 c=3일 때부터 성..
2021.08.21