합동식이란
고정된 양의 정수 m(≠1)에 대하여, 두 정수 a, b∈Z가 m|a−b를 만족하면 정수 a, b는 정수 m을 법으로 한 합동(Congruent modulo m) 또는 합동식이라 부르고 기호로는 a≡b (modm)으로 표시한다.
정리: 고정된 양의 정수 m에 대하여 다음과 같은 합동식이 성립한다.
- a≡a (modm)∀ a∈Z
- a≡b (modm)⇒ b≡a (modm)
- a≡b (modm), b≡c (modm)⇒ a≡c (modm)
정리: 합동식의 연산법칙
a≡b (modm), c≡d (modm)이면
- a+c≡b+d (modm)
- a⋅c≡b⋅d (modm), ak≡bk (modm), ∀k∈N
[증명] a≡b (modm), c≡d (modm)이므로 a−b=k1m, c−d=k2m을 만족하는 정수 k1, k2가 존재한다.
- (a+c)−(b+d)=(a−b)+(c−d)=(k1+k2)m이므로 성립한다.
- ac−bd=ac−ad+ad−bd=a(c−d)+d(a−b)=ak2m+dk1m이므로 성립한다.
ab≡ac (modm), gcd(a,m)=d이면 b≡c (mod md)이고 gcd(a,m)=1이면 b≡c (modm)이다.
[증명] ab≡ac (modm)이므로 ab−ac=ym을 만족하는 정수 y가 존재한다.
- a(b−c)=ym에서 양변을 d로 나누면 ad(b−c)=ymd이다. 즉, md|ad(b−c)이고 gcd(md,ad)=1이므로 md|(b−c)가 된다.
정리: S≡a (modm), S≡a (modn), gcd(m,n)=1이면 S≡a (modmn)
[증명] 주어진 식에 따라 m|S−a, n|S−a이다. gcd(m,n)=1이므로 mn|S−a이다.
예제: 221989+1의 일의 자리 수를 구하여라.
24≡6 (mod 10)이고 21989=4⋅221987이므로 221989=(24)21987≡6 (mod10)이 된다. 그러므로 주어진 식의 일의 자리 수는 7이다.
예제: 77|3636+4141이 성립함을 보여라.
41≡(−36) (mod77)이므로 주어진 식을 3636+(−36)41로 치환할 수 있다. 정리하면 3636(1−365)이다. 36≡1 (mod7), 36≡3 (mod11)이므로 362≡9 (mod11), 363≡5 (mod11)이 된다. 365≡1 (mod11)이므로 365≡1 (mod77)이 된다. ∴1−365≡1−1=0 (mod77)
예제: 5(2k)을 21000으로 나눈 나머지가 1이 되도록 하는 양의 정수 k 중 가장 작은 것을 구하여라.
21000|5(2k)−1을 만족하는 가장 작은 양의 정수를 구해야 한다.
- k=1 일 때, 52−1이고 23|52−1이 성립한다.
- k=2 일 때, 54−1이고 인수분해하면 (52+1)(5+1)(5−1)이 된다. 그리고 2|52+1이므로 24|54−1이 성립한다.
- k=3 일 때, 58−1이고 인수분해하면 (54+1)(52+1)(5+1)(5−1)이다. 동일한 방법으로 25|58−1이 성립한다.
- k=l 일 때, 5(2l)은 2l+2로 나누어 떨어짐을 알 수 있다.
따라서 주어진 조건을 만족하는 가장 작은 양의 정수는 998이다.
예제: a4+a2+1이 13의 배수가 되도록 하는 30 이하의 자연수 a값들의 합을 구하여라.
a4+a2+1=a4+a2−12+13=(a2+4)(a2−3)+13≡0 (mod13)을 만족해야 한다.
a2+4≡0 (mod13)인 경우
a2≡9 or −4여야 하므로 a≡3 or −3 (mod 13)의 형태를 갖는다. 따라서, 만족하는 수는 3, 10, 16, 23, 29이다.
a2−3≡0 (mod13)인 경우
a2≡3 (mod13)의 형태를 가져야 하므로 a≡4 or −4의 형태를 갖는다. 따라서, 만족하는 수는 4, 9, 17, 22, 30이다.
만족하는 값들을 모두 더하면 163이다.
예제: 자연수 n에 대하여 1n+2n+3n+4n을 십진법으로 표시했을 때, 일의 자리에서부터 연속하여 나오는 0의 개수를 f(n)이라 하자. f(n)의 최댓값을 구하여라.
주어진 식을 g(n)이라 하자.
- g(1)=10이므로 f(1)=1
- g(2)=30이므로 f(2)=1
- g(3)=100이므로 f(3)=2
f(n)=3이 되려면, g(n)은 1000으로 나누어져야 한다. 그리고 1000은 8의 배수이므로 8|g(n)을 만족해야 한다. 2n, 4n은 8의 배수이지만, 1n, 3n은 8의 배수가 아니므로 이후의 값에 대해서도 1000의 배수는 존재하지 않는다. 따라서 최댓값은 2이다.
예제: 양의 정수 n의 모든 자리 수의 합을 a(n)이라 하자. 모든 자리의 수가 홀수인 세 자리 양의 정수 n 중, a(n)=a(2n)을 만족하는 것의 개수를 구하여라.
[참고사항] 모든 자리 수의 합은 해당 수를 9로 나눈 나머지와 같다. (∵ 10k≡1 (mod9)이므로 a⋅102+b⋅10+c≡a⋅1+b⋅1+c (mod9))
a(n)≡n (mod9), a(2n)≡2n (mod9)이므로 주어진 조건이 성립되려면 n≡2n (mod9)을 만족해야 한다. 따라서, n≡0 (mod9)이다.
- a(n)=9일 때, 만족하는 순서쌍은 (1,1,7), (1,3,5), (3,3,3)이다.
- a(n)=18일 때, 모든 자리의 수가 홀수인 조건을 만족하지 못한다.
- a(n)=27일 때, 만족하는 순서쌍은 (9,9,9)이다.
따라서, 만족하는 조합의 개수는 3+6+1로 10이다.
예제: 양의 정수 n에 대하여 f(n)은 완전제곱이 아닌 양의 정수 중 n 번째 수라 하자, 예를 들어, f(1)=2, f(2)=3, f(3)=5, f(4)=6이다. 이 때, f(2010)을 1000으로 나눈 나머지를 구하여라.
f(3)=22+1, f(7)=32+1, f(13)=42+1이다. 이에 대한 일반식을 세워보면 f(k2+1−k)=k2+1임을 알 수 있다. (∵ 완전제곱수 k2이후 처음 나오는 k2+1은 그 전까지의 제곱수들을 제외한 값이기 때문이다.)
따라서, 442≤2010≤452이고 452+1을 값으로 갖는 f(k)의 k값은 2026−45=1981이다. f(2010)=f(1981)+29=2055≡55 (mod1000)이다.
예제: 210보다 작은 양의 정수 n 중 n32−1이 210의 배수가 되게하는 것의 개수를 구하여라.
n32−1=(n16+1)(n8+1)(n4+1)(n2+1)(n+1)(n−1)이고 문제에서 주어진 조건에 따라 n32−1이 짝수라면 n은 홀수이다. n=2k+1이라 하면 n2≡1 (mod4)이다. 즉, n2, n4, n8, n16≡1 (mod4)가 성립하여 주어진 식에서 (n+1)(n−1)이 26을 인수로 가져야 함을 알 수 있다. 2k+1을 대입하면 26|22k(k+1)이고 24|k(k+1)이다. 해당 조건을 만족하려면 k=16m or 16m−1이 되어 n=32m±1의 형태를 만족해야 한다.
210보다 작은 수는 m의 값이 0인 경우 1, 25의 경우 210−1이고 나머지 범위의 값의 경우 2개씩 존재하므로 25⋅2=64이다.
예제: 서로소인 양의 정수 a, b에 대하여, a+b와 a2005+b2005a+b의 최대공약수가 될 수 있는 양의 정수를 모두 구하여라.
a2005+b2005=(a+b)(a2004b0−a2003b1+⋯+a0b2004)이고 b≡(−a) (mod a+b)이므로 치환하면 (a+b)(a2004+a2004+⋯+a2004)가 된다. 따라서 a2005+b2005a+b≡2005⋅a2004이다.
gcd(a+b,a)=gcd(a,b)=1이므로 gcd(a2004,a+b)=1 이 되어 gcd(a+b,2005⋅a2004)=gcd(a+b,2005)이다. 2005=5⋅401이므로 최대공약수로 가능한 값은 1, 5, 401, 2005이다.
작성에 도움이 된 자료
- KMO 수학경시 정수론, 장환수학, 임장환 저
'Math > Number theory' 카테고리의 다른 글
정수론 | 완전 잉여계 (1) | 2020.08.12 |
---|---|
정수론 | 제곱수의 성질 (0) | 2020.08.12 |
정수론 | 격자다각형(Lattice Polygon) (0) | 2020.06.16 |
정수론 | 가우스 함수([] 함수) (0) | 2020.06.15 |
정수론 | 부정방정식 유형 풀이 - 2 (0) | 2020.06.09 |