函数迭代求值

题目

$f(n)$ 是定义在 $\mathbb{N}^{+}$上的函数,且满足
$\begin{array}{llll}
&(1) &f(f(n))=4 n+9 & \left(n \in \mathbb{N}^{+}\right) ,\\
&(2) & f(2^k)=2^{k+1}+3& (n \in \mathbb{N}),
\end{array}$
求 $f(1789)$.

解析

取$f(f(n))=4 n+4$ 中 $n$ 为 $f(n)$ 得
\begin{equation}
f(f(f(n)))=4 f(n)+9 \tag{1}
\end{equation}
在$f(f(n))=4 n+9$两边取$f$得
\begin{equation}
f(f(f(n)))=f(4 n+9)\tag{2}
\end{equation}
由$(1)$,$(2)$有
$$f(4 n+9)=4 f(n)+9$$
所以
$$
\begin{aligned}
f(1789) & =f(4 \times 445+9) \\
& =4 f(445)+9 \\
& =4 f(4 \times 109+9)+9 \\
& =4(4 f(109)+9)+9 \\
& =16 f(109)+45 \\
& =16 f(4 \times 25+9)+45 \\
& =16(4 f(25)+9)+45 \\
& =64 f(4 \times 4+9)+189 \\
& =64(4 f(4)+9)+189 \\
& =256 f(4)+765
\end{aligned}
$$
因为$f(2^k)=2^{k+1}+3 $,所以
$$f(4)=f(2^2)=2^3+3=11$$
所以
$$f(1789)=256 \times 11+765=3581.$$