YEON MATH · 행복수학

함수 심화 실전 완전정복
— 조건대로 쪼개고, 조건대로 센다 · 연습 10제

함수방정식 · 함수의 개수 · 일대일함수 · 상수함수 · 치역과 공역 · 크기 조건 · 합 조건 · 합성의 주기

연플래닝 ACADEMY

먼저 · 조건으로 주어진 함수를 다루는 무기 여섯 가지

1
함수방정식은 소인수분해로 쪼갠다 — f(ab) = f(a) + f(b) 는 곱을 합으로 바꾼다. 다만 아무렇게나 쪼개면 안 된다. n = 1 × n 으로 쪼개면 f(1) 이 나오는데 1은 소수가 아니라 값을 알 수 없다. 소수까지 쪼개야 f(k) = k 를 쓸 수 있다.
2
함수의 개수 = (공역 개수)(정의역 개수) — 정의역 원소 하나하나가 공역 어디로든 갈 수 있으니 갈 곳이 n(Y) 가지씩. 그것을 n(X) 번 곱한다. 밑은 언제나 「갈 곳」이다.
3
네 갈래를 한 판에 — ① 함수 n(Y)n(X) ② 일대일함수 n(Y)(n(Y)−1)⋯ (한 번 쓴 자리는 못 쓴다) ③ 상수함수 n(Y) ④ 치역 = 공역 — 전체에서 빠뜨리는 경우를 뺀다.
4
크기·합 조건은 한쪽을 못 박고 센다 — f(1) > f(3) 같은 조건은 f(1)에 무엇이 오는지로 경우를 나눈다. f(1)+f(2)+f(3) = 7 같은 합 조건은 값의 조합을 먼저 찾고, 일대일이면 겹치는 조합을 버린다.
5
구간이 나뉜 함수는 기울기 부호가 같아야 — 두 조각이 둘 다 올라가거나 둘 다 내려가야 일대일. 곧 (두 기울기의 곱) > 0. 실수 전체로의 일대일대응이려면 이어져야(빈틈이 없어야) 한다.
6
합성은 돌고 돈다 — 주기를 찾아 나머지만 — fn 이 항등함수가 되는 가장 작은 n (주기)을 찾으면, 아무리 큰 횟수도 그 수로 나눈 나머지 하나로 끝난다.
XY하나마다 갈 곳이 n(Y) 가지 0123네 번이면 제자리

이 개념, 학년마다 이렇게

🐣 초등 (직관)
"세 아이가 사과·배·귤 중 하나씩 고르면 몇 가지?" 각자 3가지씩 고를 수 있으니 3 × 3 × 3. 겹치지 않게 고르면 3 × 2 × 1.
📐 중2~중3 (준비)
경우의 수의 곱의 법칙과 합의 법칙, 그리고 소인수분해. 「자리마다 몇 가지인가」를 곱하는 손놀림이 그대로 함수의 개수가 된다.
🎓 고1~고2 (확장)
일대일대응 → 역함수의 존재 조건, 개수 세기 → 순열과 조합, 합성의 주기 → 주기수열·수열의 귀납적 정의로 이어진다.

🐣 저학년 직관 — "각자 몇 가지씩인가"를 곱한다

철수, 영희, 민수 세 사람이 사과·배·귤 세 가지 중에서 하나씩 고릅니다. 몇 가지 방법이 있을까요?

철수가 3가지, 영희도 3가지, 민수도 3가지 → 3 × 3 × 3 = 27가지.
이것이 바로 함수의 개수 = (갈 곳의 수)(사람 수) 입니다.

이번엔 서로 겹치지 않게 고른다면? 철수가 3가지, 영희는 남은 2가지, 민수는 마지막 1가지 → 3 × 2 × 1 = 6가지.
이것이 일대일대응의 개수예요.

아무렇게나 27가지  ·  겹치지 않게 6가지

⚠️ 여기서 학생들이 가장 많이 넘어집니다

① 밑과 지수를 뒤집는 것 — n(Y)n(X) 인지 n(X)n(Y) 인지 헷갈립니다. 밑은 언제나 「갈 곳」(공역)이고, 지수는 「가는 것」(정의역)입니다. "각자 몇 가지씩인가를 사람 수만큼 곱한다"로 외우세요.

② 방향이 바뀌는 것을 놓치는 것 — 한 문제 안에서 X → Y 를 묻다가 갑자기 Y → X 를 묻습니다. 화살표가 어느 쪽인지 매번 다시 읽으세요.

③ 함수방정식에서 1로 쪼개는 것 — 300 = 1 × 300 으로 쪼개면 f(1) 이 나오는데 1은 소수가 아니라 조건을 쓸 수 없습니다. 반드시 소인수분해까지 가야 합니다.

④ 일대일 조건을 끝까지 안 읽는 것 — 합이 맞는 조합을 다 찾아 놓고, 값이 겹치면 안 된다는 조건을 빠뜨려 개수를 더 세는 실수가 가장 흔합니다.

연습 10제 · 상세 해설

※ 연습 1·2·도전 1에서 쓰는 함수 f 는 자연수 전체의 집합에서 정의된 함수로, 두 조건 ㉠ k가 소수이면 f(k) = k  ·  ㉡ f(ab) = f(a) + f(b) 를 만족시킵니다.
연습 1함수방정식 · 소인수분해
위 조건 ㉠, ㉡ 를 만족시키는 함수 f 에 대하여 f(72) 의 값을 구하라.

풀이 — 소수까지 쪼개고, 곱을 합으로

  1. ⭐ 여기가 고비 — 72 = 8 × 9에서 멈추면 안 된다 조건 ㉡은 어떻게 쪼개도 쓸 수 있으니 72 = 8 × 9로 쪼개고 f(72) = f(8) + f(9)까지 가기 쉽습니다. 거기서 막힙니다 — 8도 9도 소수가 아니라 값을 알 수 없기 때문입니다. 쓸 수 있는 값을 주는 것은 조건 ㉠, 곧 「소수일 때만」입니다. 그러니 더 쪼갤 수 없을 때까지 = 전부 소수가 될 때까지 쪼개야 합니다 — 72 = 2 × 2 × 2 × 3 × 3. 그것이 소인수분해입니다. 이제 f(72) = 3f(2) + 2f(3) = 3×2 + 2×3 = 12. 지수는 「그 소수를 그만큼 더한다」는 뜻이라고 새겨 두십시오 — f(2³) = 3f(2). 어느 길로 쪼개도 끝에서는 같은 소수들이 나오므로 답은 하나입니다(6 × 12로 가도 12).
  2. 소인수분해: 72 = 2³ × 3² → ㉡ 로 곱을 합으로: f(72) = f(2) + f(2) + f(2) + f(3) + f(3).
  3. 2와 3은 모두 소수이므로 ㉠ 에 의해 f(2) = 2, f(3) = 3.
  4. 따라서 2 + 2 + 2 + 3 + 3 = 12.
  5. 검산 — 다른 길로 쪼개도 같다. 72 = 6 × 12 로 보면 f(6) = f(2)+f(3) = 5, f(12) = f(2)+f(2)+f(3) = 7, 합이 12 ✓
"소수까지 쪼개야 조건을 쓴다 — 300을 1×300으로 쪼개면 f(1)을 알 수 없다. 반드시 소인수분해."— 장대경 선생님 제53강 「조건으로 주어진 함수」
f(72) = 12
※ 지수는 「그 소수를 그만큼 더한다」는 뜻이다 — f(2³) = 3 f(2).
연습 2함수방정식 · 거꾸로 찾기
위 조건 ㉠, ㉡ 를 만족시키는 함수 f 에 대하여 f(n) = 10 을 만족시키는 가장 작은 자연수 n 을 구하라. (단 n ≥ 2)

풀이 — 「소수들의 합이 10」이 되는 묶음을 다 찾는다

  1. f(n) 은 n을 소인수분해했을 때 나오는 소수들을 (겹치는 것까지) 모두 더한 값이다.
  2. 합이 10이 되는 소수들의 묶음을 모두 찾는다 — 3 + 7 5 + 5 2 + 3 + 5 2 + 2 + 3 + 3 2 + 2 + 2 + 2 + 2
  3. ⭐ 여기가 고비 — 「합이 작은 묶음」이 아니라 「곱이 작은 묶음」을 찾아야 한다 합이 모두 10으로 같으니 어느 것이 가장 작은 n인지 짐작이 안 갑니다. 게다가 2를 많이 쓴 묶음이 작을 것 같은 느낌이 드는데, 정반대입니다. 묶음마다 곱을 내어 보십시오 — 3+7 → 21, 5+5 → 25, 2+3+5 → 30, 2+2+3+3 → 36, 2+2+2+2+2 → 32. 가장 작은 것은 21입니다. 까닭은 합이 같을 때 「수를 적게 나누어 가질수록」 곱이 작아지기 때문입니다 — 10을 둘로만 나눈 3+7이 이기고, 다섯으로 잘게 나눈 2×2×2×2×2는 오히려 커집니다. 그러니 묶음을 찾을 때 하나도 빠뜨리지 말고 모두 적은 뒤, 곱을 내어 견주십시오 — 느낌으로 고르면 반드시 틀립니다.
  4. 각 묶음의 곱이 곧 n → 21, 25, 30, 36, 32. 가장 작은 것은 21.
  5. 검산 — 21 = 3 × 7 이므로 f(21) = 3 + 7 = 10 ✓ 그리고 2부터 20까지 어느 수도 소인수의 합이 10이 되지 않는다 ✓
n = 21
※ 합이 같으면 「큰 소수 둘」이 곱은 더 작다 — 2를 많이 쓸수록 곱이 커진다(2를 다섯 번 쓰면 32).
연습 3함수의 개수 · 기본
집합 X = {1, 2, 3, 4}, Y = {a, b, c} 에 대하여 X 에서 Y 로의 함수의 개수를 구하라.

풀이 — 갈 곳이 몇 가지인지를 정의역 원소 수만큼 곱한다

  1. ⭐ 여기가 고비 — 밑이 3이고 지수가 4다 (4³이 아니다) 집합이 둘이니 3⁴ = 81과 4³ = 64 사이에서 손이 흔들립니다. 가르는 잣대는 「누가 반드시 하나씩 정해야 하는가」입니다. 함수의 약속은 정의역의 원소마다 빠짐없이 하나씩 짝지어 주는 것입니다. 그러니 정할 일이 정의역 원소 수(4번)만큼 생기고, 한 번 정할 때 고를 수 있는 것이 공역 원소 수(3가지) — 3 × 3 × 3 × 3 = 3⁴ = 81. 「고르는 가짓수」가 밑, 「고르는 횟수」가 지수입니다. 화살표는 언제나 정의역에서 출발하고, 출발하는 쪽이 지수라고 새겨 두십시오 — 이 하나가 이 단원 개수 문제 전체의 뼈대입니다.
  2. 정의역의 네 원소가 각각 3가지 중 하나로 가고 서로 상관이 없으므로 곱한다 → 34 = 81.
81
※ 밑이 3(갈 곳), 지수가 4(가는 것) — 뒤집어서 43 = 64 라고 쓰면 틀린다.
연습 4일대일함수 · 하나씩 줄어드는 곱셈
집합 X = {1, 2, 3}, Y = {1, 2, 3, 4, 5} 에 대하여 X 에서 Y 로의 일대일함수의 개수를 구하라.

풀이 — 한 번 쓴 자리는 다시 못 쓴다

  1. ⭐ 여기가 고비 — 곱하는 수가 한 번씩 줄어드는 까닭 그냥 함수라면 5 × 5 × 5였을 텐데, 여기서는 5 × 4 × 3으로 한 번 고를 때마다 선택지가 하나씩 줄어듭니다. 까닭은 「일대일 = 두 원소가 같은 곳으로 가면 안 된다」이기 때문입니다. 1이 어딘가로 갔다면 그 자리는 이미 임자가 있어 2는 남은 4개 중에서 골라야 하고, 2까지 정해지면 3은 남은 3개 중에서 골라야 합니다 — 5 × 4 × 3 = 60. 여기서 한 가지가 더 보입니다 — 정의역이 공역보다 크면 일대일함수는 아예 만들 수 없습니다 (자리가 모자라 반드시 겹칩니다). 그리고 둘의 크기가 꼭 같을 때만 일대일함수가 곧 일대일대응이 됩니다 — 여기서는 3 < 5라 공역에 두 자리가 남으므로 일대일대응은 하나도 없습니다.
  2. 1은 5가지, 2는 남은 4가지, 3은 남은 3가지 → 5 × 4 × 3 = 60.
60
※ 정의역과 공역의 원소 수가 같을 때만 일대일함수가 곧 일대일대응이 된다. 여기서는 n(X) = 3 < 5 = n(Y) 이므로 일대일대응은 하나도 없다.
연습 5상수함수 · 일대일대응
집합 X = Y = {1, 2, 3, 4} 에 대하여, X 에서 Y 로의 상수함수의 개수와 일대일대응의 개수의 합을 구하라.

풀이 — 두 갈래를 따로 세어 더한다

  1. ⭐ 여기가 고비 — 두 갈래가 「가장 좁은 것」과 「가장 넓은 것」으로 정반대다 두 개수를 같은 방식으로 세려다 헷갈립니다. 둘은 극과 극에 있습니다. 상수함수는 정할 것이 「한 곳」뿐이라 가장 좁고, 일대일대응은 네 자리를 모두 다르게 채워야 해 가장 빡빡합니다. 상수함수 — 「모두 같은 곳으로」가 이미 정해져 있으니 남은 물음은 「그 한 곳이 어디냐」뿐입니다. 그러니 개수는 n(Y) = 4. 정의역이 100개라도 답은 여전히 4입니다 — 치역의 원소가 하나뿐인 함수이기 때문입니다. 일대일대응 — 네 자리를 모두 다른 값으로 채워야 하니 4 × 3 × 2 × 1 = 24. 두 갈래는 함께 일어날 수 없으므로(상수함수는 결코 일대일이 아니다) 그냥 더합니다 — 4 + 24 = 28.
  2. 상수함수 — 갈 한 곳을 고르는 방법 = n(Y) = 4.
  3. 일대일대응 — 갈 곳이 하나씩 줄어든다 → 4 × 3 × 2 × 1 = 4! = 24.
  4. 합은 4 + 24 = 28.
28
※ 상수함수는 치역의 원소가 하나뿐인 함수다. 그래서 n(X) 가 얼마든 개수는 언제나 n(Y) 다.
연습 6치역 = 공역 · 빠뜨리는 경우를 뺀다
집합 X = {1, 2, 3}, Y = {a, b} 에 대하여 X 에서 Y 로의 함수 중 치역과 공역이 같은 함수의 개수를 구하라.

풀이 — 전체에서 「빠뜨리는 경우」를 뺀다

  1. X 에서 Y 로의 함수는 모두 23 = 8개.
  2. ⭐ 여기가 고비 — 「둘 다 나온다」를 정면으로 세지 말고 반대를 센다 「a도 나오고 b도 나온다」를 정면으로 세려면 어느 원소를 어느 값에 몇 개씩 배정할지 갈래를 나눠야 해 번거롭습니다. 반대를 세면 놀랄 만큼 간단합니다 — 「둘 다 나오지는 않는다」는 곧 「한 쪽으로만 몰린다」, 그것이 바로 상수함수입니다. 공역이 a, b 둘뿐이라 빠지는 것이 있다면 반드시 하나만 남습니다. 그런 함수는 전부 a로 · 전부 b로, 딱 둘뿐이니 2³ − 2 = 6. ⚠️ 이 지름길은 공역이 2개일 때만 통합니다. 3개부터는 「한 값을 안 쓰는 경우」끼리 서로 겹쳐 그냥 빼면 너무 많이 빠집니다 — 그때는 포함배제로 되돌려 주어야 합니다(도전 2번에서 그 모습을 봅니다).
  3. 치역이 공역과 다른 경우는 한 곳으로만 몰리는 상수함수 2가지 → 8 − 2 = 6.
  4. 검산 — 세 원소를 두 값에 나누어 주되 한쪽이 비면 안 되므로 (2,1) 로 갈리는 방법 3가지와 (1,2) 로 갈리는 방법 3가지, 모두 6가지 ✓
6
※ 공역의 원소가 2개일 때만 「전체 − 상수함수 2」로 끝난다. 3개 이상이면 포함배제가 필요하다(도전 2번).
연습 7크기 조건 · 반반의 대칭
집합 X = Y = {1, 2, 3, 4, 5} 에 대하여 X 에서 Y 로의 일대일대응 f 중 f(1) < f(2) 인 것의 개수를 구하라.

풀이 — 「반반」을 보면 한 줄에 끝난다

  1. 일대일대응은 모두 5! = 120개.
  2. ⭐ 여기가 고비 — 세지 말고 「반반으로 갈린다」를 보이는 것 f(1) < f(2)인 것을 일일이 세려 들면 120개를 다 뒤져야 합니다. 셀 필요가 없습니다. 두 가지만 보이면 곧바로 절반입니다. ① 빠짐없이 · 겹침없이 두 쪽으로 갈린다 — 일대일대응이라 f(1)과 f(2)는 결코 같을 수 없으니 반드시 <이거나 >, 그 사이는 없습니다. ② 두 쪽의 개수가 같다 — f(1)과 f(2)의 값만 서로 맞바꾸면 <인 것 하나가 >인 것 하나로 빠짐없이 짝지어집니다(바꾸면 되돌아오니 짝은 하나뿐). 빠짐없이 둘로 갈렸는데 두 쪽이 같다면 각각은 절반이니 120 ÷ 2 = 60. 「대칭이니 반반」은 세어서 확인하는 것이 아니라 「짝지어 보이는」 것입니다.
  3. f(1) ≠ f(2)이니 <이거나 > 둘 중 하나, 두 값을 맞바꾸면 서로 짝지어져 개수가 같다 → 120 ÷ 2 = 60.
60
※ 강의의 예제④(f(1) > f(3) 인 일대일대응 12가지)도 4! ÷ 2 = 12 로 확인했다. 경우를 다 나눠 센 뒤 이 대칭으로 검산하는 습관을 들이자.
연습 8합 조건 · 겹치면 탈락
집합 X = {1, 2, 3}, Y = {1, 2, 3, 4, 5, 6} 에 대하여, X 에서 Y 로의 일대일함수 f 중 f(1) + f(2) + f(3) = 9 인 것의 개수를 구하라.

풀이 — 값의 「묶음」을 먼저 찾고, 그다음 늘어놓는다

  1. 일대일이므로 세 값은 서로 다르다. 1~6에서 서로 다른 세 수의 합이 9인 묶음을 모두 찾는다.
  2. {1, 2, 6} {1, 3, 5} {2, 3, 4} — 세 가지. ({1,4,4}·{2,2,5}·{3,3,3} 은 값이 겹쳐 탈락)
  3. ⭐ 여기가 고비 — 「어떤 값을 쓸까」와 「어느 자리에 놓을까」를 갈라 센다 한꺼번에 세려 하면 어지럽습니다. 일을 둘로 갈라 놓으면 각각이 아주 쉬워집니다. ① 값의 묶음을 고른다 → ② 그 값들을 자리에 늘어놓는다. ① 고르기 — 1~6에서 서로 다른(일대일이므로) 세 수의 합이 9인 묶음은 {1,2,6}, {1,3,5}, {2,3,4} 셋뿐입니다. ({1,4,4} 같은 것은 값이 겹쳐 일대일이 깨지므로 탈락 — 이 걸름을 잊으면 답이 부풀어 오릅니다.) ② 늘어놓기 — 묶음 하나마다 세 값을 f(1), f(2), f(3) 세 자리에 놓는 방법이 3! = 6가지. 둘은 서로 상관이 없으니 곱합니다 — 3 × 6 = 18. 개수 문제에서 「무엇을」과 「어디에」를 갈라 세는 것이 언제나 첫 손질입니다.
  4. 묶음 셋 × 늘어놓는 방법 3! = 6 → 3 × 6 = 18.
18
※ 「어떤 값들을 쓸까」와 「어느 자리에 놓을까」를 갈라서 세는 것이 개수 문제의 뼈대다.
연습 9구간이 나뉜 함수 · 기울기 부호
실수 전체의 집합에서 정의된 함수
f(x) = (a − 1)x + 2 (x ≥ 0)  ,  (a + 4)x + 2 (x < 0)
가 실수 전체의 집합으로의 일대일대응이 되도록 하는 정수 a 중 −5 ≤ a ≤ 5 인 것의 개수를 구하라.

풀이 — 두 기울기의 곱이 양수

  1. x = 0 에서 두 식이 모두 2 이므로 그래프는 이어져 있다(빈틈 없음).
  2. ⭐ 여기가 고비 — 「부호가 같다」를 곱 하나로 적는다 두 조각의 방향이 같아야 한다는 것까지는 보이는데, 그것을 식으로 어떻게 쓰느냐에서 막힙니다. 「둘 다 양수」와 「둘 다 음수」로 나눠 풀면 경우가 갈려 번거롭습니다. 부호가 같다 = 곱이 양수 — 이 한 줄로 두 경우가 동시에 담깁니다 : (a − 1)(a + 4) > 0. < 0이면 두 근 「사이」, > 0이면 두 근 「바깥」이므로 a < −4 또는 a > 1. 양 끝 −4와 1에서는 한 조각의 기울기가 0이 되어 일대일이 깨지므로 빠집니다. 정수는 −5와 2, 3, 4, 5 — 다섯 개입니다.
  3. (a − 1)(a + 4) > 0 → a < −4 또는 a > 1.
  4. −5 ≤ a ≤ 5 인 정수는 −5  ·  2, 3, 4, 5 → 5개.
  5. 검산 — a = −4 이면 아래쪽 기울기가 0 이라 상수 조각이 생겨 일대일이 아니다 ✓ a = 1 이면 위쪽이 상수 조각이 되어 역시 안 된다 ✓
"기울기의 부호가 서로 같아야 돼 — 구간이 나뉜 함수가 일대일대응이려면 두 조각이 둘 다 오르거나 둘 다 내려야 한다."— 장대경 선생님 제53강 「조건으로 주어진 함수」
5개 (a = −5, 2, 3, 4, 5)
※ 부등식을 풀 때 (2 − a) 처럼 x의 계수가 음수인 인수가 있으면 (a − 2) 로 바꾸면서 부등호를 뒤집는다. 강의의 무기⑤ 그대로다.
연습 10합성의 주기 · 나머지
집합 X = {1, 2, 3, 4, 5} 에서 X 로의 함수 f 가 f(1) = 2,   f(2) = 3,   f(3) = 4,   f(4) = 5,   f(5) = 1 이다. f2026 = f ∘ f ∘ ⋯ ∘ f (2026번 합성)일 때 f2026(3) 의 값을 구하라.

풀이 — 몇 번 만에 제자리로 오는지(주기)를 먼저 찾는다

  1. 화살표를 그려 보면 1 → 2 → 3 → 4 → 5 → 1 로 다섯 개가 한 바퀴를 돈다.
  2. ⭐ 여기가 고비 — 2026번을 세지 않고 「나머지」로 끝내는 것 2026번 합성이라니 손댈 수 없는 수처럼 보입니다. 그런데 몇 번만 따라가 보면 곧 되풀이가 드러납니다 — 1 → 2 → 3 → 4 → 5 → 1로 다섯 걸음마다 모두 제자리로 돌아옵니다. 곧 f⁵이 항등함수이고, 주기가 5입니다. 주기를 알면 2026번 가운데 「온전한 바퀴」는 아무 일도 하지 않은 셈이므로 남는 걸음만 세면 됩니다 — 2026 = 5 × 405 + 1이니 남는 걸음은 1, 곧 f²⁰²⁶ = f이고 답은 f(3) = 4. ⛔ 나머지가 0이면 「0번」이 아니라 「항등함수」임을 조심하십시오 — 딱 제자리라는 뜻입니다. 「몇 번 만에 제자리로 오나」 하나만 찾으면, 지수가 아무리 커도 나머지 한 번으로 끝납니다.
  3. f5 가 항등함수이므로 주기는 5. 2026 = 5 × 405 + 1 → f2026 = f.
  4. f(3) = 4.
  5. 검산 — f5(3) = 3 이므로 다섯 번마다 제자리. 2025 번은 제자리, 한 번 더 가면 4 ✓
4
※ 주기가 p 일 때 fN = fr (r 은 N 을 p 로 나눈 나머지). 나머지가 0이면 항등함수다.

도전 6제 · 한 걸음 더

도전 · 고1함수방정식 · f(1)을 스스로 구하기
자연수 전체의 집합에서 정의된 함수 f 가 모든 자연수 a, b 에 대하여 f(ab) = f(a) + f(b) 를 만족시키고 f(2) = 1, f(3) = 2 이다. (1) f(1) 의 값을 구하라.  (2) f(72) 의 값을 구하라.

풀이 — 조건에 「1」을 넣어 보는 것이 첫 수

  1. ⭐ 여기가 고비 — f(1)은 주어지지 않았지만 조건이 스스로 알려 준다 f(2)와 f(3)은 주었는데 f(1)은 없습니다. 「주지 않았으니 구할 수 없다」가 아닙니다 — 조건식에 1을 넣어 보면 스스로 튀어나옵니다. a = b = 1을 넣으면 f(1 × 1) = f(1) + f(1), 곧 f(1) = 2f(1). 양변에서 f(1)을 빼면 f(1) = 0. 「어떤 수와 곱해도 그대로인 수」인 1이, 합에서는 「더해도 그대로인 수」인 0으로 옮겨 간 것입니다 — 이 규칙이 곱을 합으로 바꾸는 규칙이기 때문입니다. 함수방정식에서 아는 값이 모자라면 「1을 넣어 보라」가 언제나 첫 수입니다. (2)는 그다음 손쉬운 일 — 72 = 2³ × 3²이니 f(72) = 3f(2) + 2f(3) = 3 + 4 = 7. 「소수이면 f(k) = k」가 없어도 소인수분해는 그대로 쓰고, 주어진 값만 갈아 끼웁니다.
  2. (1) a = b = 1 → f(1) = 2f(1) → f(1) = 0.
  3. (2) 72 = 2³ × 3² 이므로 f(72) = 3f(2) + 2f(3).
  4. 3 × 1 + 2 × 2 = 3 + 4 = 7.
  5. 검산 — f(6) = f(2)+f(3) = 3, f(12) = f(2)+f(6) = 4, f(72) = f(6)+f(12) = 7 ✓
(1) f(1) = 0  ·  (2) f(72) = 7
※ 「소수이면 f(k) = k」가 없어도 소인수분해는 그대로 쓴다. 주어진 소수의 값만 갈아 끼우면 된다.
도전 · 고1개수 종합 · 포함배제
집합 X = {1, 2, 3}, Y = {1, 2, 3, 4} 에 대하여 a = X → Y 함수의 개수, b = X → Y 일대일함수의 개수, c = Y → X 함수 중 치역과 공역이 같은 것의 개수라 할 때 a + b + c 를 구하라.

풀이 — 셋째가 진짜다. 「빠뜨리는 경우」를 포함배제로 뺀다

  1. a = 43 = 64.
  2. b = 4 × 3 × 2 = 24.
  3. c — Y(4개)에서 X(3개)로의 함수는 모두 34 = 81개.
  4. ⭐ 여기가 고비 — 「한 값을 안 쓰는」 경우들이 서로 겹친다 연습 6처럼 「전체 − 안 쓰는 경우」로 가려는데, 공역이 3개가 되면서 덫이 생깁니다. 「1도 2도 안 쓰는 함수」는 양쪽에 모두 들어 있어 두 번 세어집니다. 그러니 그냥 빼면 너무 많이 빠집니다. 한 값을 안 쓰는 경우 3 × 2⁴ = 48 안에서 두 값을 안 쓰는 경우(상수함수) 3 × 1⁴ = 3 이 두 번씩 세어졌으니 한 번 되돌려 더합니다. 못 되는 경우 = 45, 따라서 c = 81 − 45 = 36. 이것이 「포함배제」 — 두 번 센 것은 한 번 빼 준다가 전부입니다.
  5. 한 값을 안 쓰는 경우 3 × 24 = 48, 두 번 세어진 상수함수 3 × 14 = 3 을 되돌려 48 − 3 = 45.
  6. c = 81 − 45 = 36.
  7. a + b + c = 64 + 24 + 36 = 124.
🚧 틀린 길을 한 줄만 가 보자 — 겹침을 안 돌려주고 그냥 빼면 c = 81 − 48 = 33 이라 해 봅시다. 작은 경우로 시험하면 드러납니다 — 양쪽이 다 셋일 때 같은 방법이면 27 − 24 = 3 인데 실제로는 3! = 6개 라 답이 모자랍니다. 「1도 2도 안 쓰는 것」이 양쪽에 들어 있어 두 번 빠졌기 때문입니다. → 3 × 1⁴ = 3 을 되돌려 더해 c = 36. (작은 경우로도 27 − 21 = 6 ✓)
124
※ 공역이 2개일 때(연습 6)는 「전체 − 2」로 끝났지만, 3개부터는 포함배제가 필요하다. 강의의 무기③ ④가 여기서 진짜 모습을 드러낸다.
도전 · 고1크기 조건 · 줄 세우기가 하나로 정해질 때
집합 X = Y = {1, 2, 3, 4} 에 대하여 X 에서 Y 로의 일대일대응 f 중 f(1) < f(2) < f(3) 인 것의 개수를 구하라.

풀이 — 「크기 순서가 정해졌다」는 것은 곧 「고르기만 하면 된다」는 뜻

  1. ⭐ 여기가 고비 — 「크기 순서가 정해졌다」는 곧 「늘어놓을 필요가 없다」는 뜻 일대일대응 24가지를 하나씩 뒤져 f(1) < f(2) < f(3)인 것을 골라내려면 오래 걸립니다. 조건을 「일을 줄여 주는 것」으로 읽으십시오. 세 자리의 순서가 이미 못 박혔으니, 값 셋을 고르기만 하면 놓는 방법은 저절로 하나입니다. 그러니 정할 것은 「세 자리에 쓸 값 셋을 무엇으로 할까」뿐인데, 그것은 곧 「남는 값 하나, 곧 f(4)를 무엇으로 할까」와 같은 말입니다 — 4가지. f(4)가 정해지면 남은 세 값을 작은 것부터 f(1), f(2), f(3)에 놓는 길은 하나뿐이니 4 × 1 = 4. 일반화하면 — k개의 크기 순서를 못 박으면 그 k개를 「고르는 방법」만 남습니다 (늘어놓는 k!가지 가운데 하나만 살아남으므로 k!로 나누는 것과 같습니다). 연습 7의 「반반」이 바로 k = 2일 때의 이 이야기입니다.
  2. f(4) 에 올 값을 고르면(4가지) 남은 세 값의 자리는 저절로 하나 → 4 × 1 = 4.
  3. 검산 — 실제로 f(4) 가 1, 2, 3, 4 일 때 각각 (f(1),f(2),f(3)) 은 (2,3,4), (1,3,4), (1,2,4), (1,2,3) 하나씩 ✓
4
※ 일반화 — n개 중 k개의 크기 순서를 못 박으면 그 k개를 고르는 방법의 수만 남는다(k! 로 나눈다).
도전 · 고1합 조건 · 여집합으로 뒤집기
집합 X = {1, 2, 3, 4}, Y = {1, 2, 3, 4, 5, 6} 에 대하여, X 에서 Y 로의 일대일함수 f 중 f(1) + f(2) + f(3) + f(4) = 14 인 것의 개수를 구하라.

풀이 — 네 개를 고르는 대신 「빼는 두 개」를 고른다

  1. 1 + 2 + ⋯ + 6 = 21.
  2. ⭐ 여기가 고비 — 네 개를 고르는 대신 「빼는 두 개」를 고른다 1~6에서 합이 14인 네 수의 묶음을 찾으려면 경우가 많아 빠뜨리기 쉽습니다. 여섯 개 중 넷을 고르는 것은 곧 「둘을 버리는 것」이니, 버리는 쪽을 세면 훨씬 적습니다. 여섯 수의 합은 1 + 2 + ⋯ + 6 = 21로 고정되어 있습니다. 그러니 쓰는 넷의 합이 14라는 말은 안 쓰는 둘의 합이 21 − 14 = 7이라는 말과 완전히 같은 말입니다. 합이 7인 서로 다른 두 수는 {1,6}, {2,5}, {3,4} — 한눈에 셋뿐입니다. 묶음마다 남은 네 값을 네 자리에 늘어놓는 방법이 4! = 24가지이니 3 × 24 = 72. 고르는 개수가 전체의 절반을 넘으면 언제나 「안 고르는 쪽」을 세십시오.
  3. 여섯 수의 합이 21이므로 쓰는 넷의 합 14 ⟺ 안 쓰는 둘의 합 7.
  4. 합이 7인 서로 다른 두 수 → {1, 6} {2, 5} {3, 4} — 세 가지.
  5. 각각 남은 네 값을 f(1) ~ f(4) 에 늘어놓는 방법이 4! = 24가지.
  6. 3 × 24 = 72.
  7. 검산 — 예를 들어 {1,6} 을 빼면 쓰는 값은 {2,3,4,5}, 합이 14 ✓
🚧 틀린 길을 한 줄만 가 보자 — 「고르기」와 「늘어놓기」를 한 번에 하면 합이 14인 묶음이 셋이니 그냥 3 가지라 답해 봅시다. 묻는 것은 「함수 f 가 몇 개인가」이고, {2,3,4,5} 하나만 보아도 f(1) = 2 인 것과 f(1) = 5 인 것은 다른 함수입니다. → 4! = 24 를 곱해 72. 「무엇을 쓸까」를 세었으면 「어디에 놓을까」도 세십시오.
72
※ 고르는 개수가 전체의 절반을 넘으면 「안 고르는 쪽」을 세는 것이 언제나 빠르다.
도전 · 고1구간이 나뉜 함수 · 이어짐 + 부호
실수 전체의 집합에서 정의된 함수
f(x) = (a − 2)x + 5 (x ≥ 2)  ,  (a + 1)x + b (x < 2)
가 실수 전체의 집합으로의 일대일대응이다. (1) 상수 b 의 값을 구하라.  (2) −5 ≤ a ≤ 5 인 정수 a 의 개수를 구하라.

풀이 — 「빈틈이 없어야」가 곧 이어짐, 「같은 값을 두 번 갖지 않아야」가 곧 부호

  1. ⭐ 여기가 고비 — 조건 둘이 각각 b 하나와 a 하나를 맡는다 미지수가 둘이라 막막합니다. 「일대일대응」이 낳는 조건도 둘이고, 그 둘이 하나씩 나눠 맡습니다. ① 「대응」 → 경계에서 이어져야 한다 → b를 정한다. 위 조각은 2a + 1, 아래 조각은 2a + 2 + b — 같아야 하므로 b = −1. a가 양쪽에서 똑같이 지워져 b만 남는 것이 이 문제의 묘미입니다. ② 「일대일」 → 두 기울기의 부호가 같아야 한다. (a − 2)(a + 1) > 0 → 정수는 7개.
  2. (1) 치역이 실수 전체가 되려면 x = 2 에서 값이 튀면 안 된다.
  3. 위쪽 조각의 x = 2 에서의 값: 2(a − 2) + 5 = 2a + 1.
    아래쪽 조각이 x = 2 로 다가갈 때의 값: 2(a + 1) + b = 2a + 2 + b.
  4. 두 값이 같아야 하므로 2a + 1 = 2a + 2 + b → b = −1. (a 와 상관없이 정해진다.)
  5. (2) 두 기울기의 부호가 같아야 한다 → (a − 2)(a + 1) > 0 → a < −1 또는 a > 2.
  6. −5 ≤ a ≤ 5 인 정수는 −5, −4, −3, −2 와 3, 4, 5 → 7개.
  7. 검산 — a = 3, b = −1 이면 f(x) = x + 5(x ≥ 2), 4x − 1(x < 2). x = 2 에서 둘 다 7 ✓ 두 기울기 1과 4가 모두 양수 ✓
(1) b = −1  ·  (2) 7개
※ 일대일만 물으면 부호 조건 하나로 끝나지만, 일대일대응(치역 = 실수 전체)을 물으면 이어짐까지 확인해야 한다.
도전 · 고1합성의 주기 · 항등함수가 될 때
집합 X = {0, 1, 2, 3} 에서 X 로의 함수 f 가 f(0) = 1,   f(1) = 2,   f(2) = 3,   f(3) = 0 이다. (1) fn 이 항등함수가 되는 가장 작은 자연수 n 을 구하라.   (2) f2026(2) 의 값을 구하라.

풀이 — 한 바퀴가 몇 걸음인지가 곧 주기

  1. ⭐ 여기가 고비 — 이번엔 나머지가 0이 아니라 2다 연습 10과 뼈대가 같지만 두 곳이 달라져 답이 완전히 달라집니다 — 바퀴의 길이가 5가 아니라 4이고, 2026을 나눈 나머지가 1이 아니라 2입니다. (1) 0 → 1 → 2 → 3 → 0으로 네 개가 한 바퀴이니 세 번까지는 제자리가 아니고 네 번 만에 모두 제자리 — 가장 작은 n은 4입니다. (「모든 원소가 동시에」 제자리여야 항등함수라는 점을 놓치지 마십시오.) (2) 2026 = 4 × 506 + 2이니 남는 걸음이 둘 — f²⁰²⁶ = f². 그러니 2에서 두 걸음만 걸으면 됩니다 : 2 → 3 → 0, 답은 0. (원소가 두 바퀴로 갈라져 있으면 주기는 두 바퀴 길이의 최소공배수가 됩니다.)
  2. (1) 0 → 1 → 2 → 3 → 0 으로 네 개가 한 바퀴 → n = 4.
  3. (2) 2026 = 4 × 506 + 2 → f2026 = f2.
  4. f2(2) = f(f(2)) = f(3) = 0.
  5. 검산 — 2 → 3 → 0 으로 두 걸음 ✓ 그리고 f4(2) = 2 로 제자리 ✓
"합성은 돌고 돈다 — 몇 번 만에 제자리로 오는지 주기만 찾으면, 아무리 큰 수도 나머지 하나로 끝난다."— 장대경 선생님 제53강 「조건으로 주어진 함수」
(1) n = 4  ·  (2) f2026(2) = 0
※ 원소가 m 개인 한 바퀴면 주기는 m. 두 바퀴로 갈라져 있으면(예: 3개 + 2개) 주기는 두 바퀴 길이의 최소공배수가 된다.

🌱 여기서 더 넓혀 쓰기

오늘의 무기 여섯 가지는 고등학교 내내 모습을 바꿔 다시 나옵니다.

순열과 조합
고1 · 경우의 수
「갈 곳이 하나씩 줄어드는 곱셈」이 곧 순열 nPr 입니다. 도전 3번처럼 크기 순서를 못 박으면 순열이 조합 nCr 로 바뀝니다.
역함수의 존재 조건
고1 · 함수
「기울기 부호가 같아야 한다」는 곧 역함수가 있으려면 일대일대응이어야 한다는 말입니다. 역함수 그래프가 y = x 대칭인 까닭도 여기서 나옵니다(제14강 「함수 — 대응을 정확히 센다」).
주기수열과 귀납적 정의
고2 · 수학Ⅰ 수열
an+1 = f(an) 꼴로 정해지는 수열은 곧 합성함수를 되풀이하는 일입니다. 주기를 찾아 나머지만 보는 손놀림이 그대로 쓰입니다.
소인수분해와 「곱을 합으로」
고1~ · 정수 · 로그
f(ab) = f(a) + f(b) 는 로그가 가진 성질과 같은 모양입니다. log(ab) = log a + log b 를 배우면 오늘의 함수방정식이 다시 보입니다.
※ 이 자료의 연습문제는 장대경 선생님 방법으로 새로 만들고 값을 손과 파이썬 전수 열거로 검산한 교육 자료입니다(원본 강의와 숫자·예제가 다를 수 있음).
← 장대경 선생님의 특강 칼럼으로