자기동형수 계산기
제곱해도 마지막 자릿수들이 자기 자신과 똑같이 남는 자기동형수인지 판정합니다. 25²=625(끝자리 25), 76²=5776(끝자리 76)처럼 «꼬리»가 그대로 남는 성질을 봅니다.
0 이상의 정수. 200자리까지 다룹니다.
25
자기동형수입니다
25² = 625
100만 이하의 자기동형수 (12개)
0, 1, 5, 6, 25, 76, 376, 625, 9376, 90625, 109376, 890625
0과 1을 빼면 5로 끝나는 갈래(5, 25, 625, 90625, …)와 6으로 끝나는 갈래(6, 76, 376, 9376, …)로 나뉩니다. 각 갈래는 자릿수를 하나씩 늘려 가며 끝없이 이어집니다 — 목록에 끝이 없습니다.
계산 방법
- 1판정할 수를 넣습니다(0 이상의 정수, 200자리까지).
- 2그 수를 제곱한 값을 봅니다.
- 3제곱한 값의 마지막 자릿수들(원래 수의 자릿수 개수만큼)이 원래 수와 똑같은지 확인합니다.
자주 묻는 질문
제곱해도 마지막 자릿수들이 자기 자신과 똑같이 남는 수입니다. 25는 두 자리인데 25²=625의 마지막 두 자리가 25로 똑같고, 76²=5776의 마지막 두 자리도 76으로 똑같아 둘 다 자기동형수입니다.
무한히 있습니다. 0과 1을 뺀 자기동형수는 5로 끝나는 갈래(5, 25, 625, 90625, …)와 6으로 끝나는 갈래(6, 76, 376, 9376, …)로 나뉘는데, 각 갈래는 자릿수를 하나씩 늘리면 유일하게 다음 항으로 이어져 끝없이 계속됩니다.
n² ≡ n (mod 10^d)를 만족하려면 n(n−1)이 10^d의 배수여야 하는데, n과 n−1은 서로소라 이 둘로 10^d의 소인수(2와 5)를 나눠 가져야 합니다. 그러면 n은 2^d의 배수이면서 5^d로 나누면 1 나머지이거나, 그 반대인 경우만 남는데 이 두 경우가 각각 6으로 끝나는 갈래와 5로 끝나는 갈래입니다.
열두 개입니다: 0, 1, 5, 6, 25, 76, 376, 625, 9376, 90625, 109376, 890625. 정의(제곱해서 마지막 자릿수들이 같은지)를 그대로 브루트포스로 세어 확인한 값입니다.
알아두면 좋은 점
- 0과 1은 자명하게 자기동형수로 칩니다(0²=0, 1²=1).
- 판정은 전부 BigInt로 계산합니다. 11자리 이상을 넣으면 제곱이 배정밀도 실수의 안전 범위(약 9×10^15)를 넘어가 일반 숫자 연산으로는 끝자리가 틀어질 수 있습니다.
- 200자리를 넘는 입력은 계산량 때문에 막아 두었습니다.
함께 보면 좋은 도구
마지막 검증: 2026년 9월 7일 · 결과는 참고용 추정치입니다.