本記事は短答形式のコンテストにおいて正解の値を出すことを主な目的とした記事ですので, 大幅に厳密性を捨てている部分があっても見なかったことにして下さい.
まず, $f(x)$ の項数は3ですごく複雑です. $f(x)$ を $x$ 軸方向に $-\frac{2021}{2}$ だけ移動すると, $k = \frac{2021}{2}$ とすることで $f(x) = x^2 + 3k^2$ となってスッキリします. このとき, $-k \le a \le k$ となることに気をつけて下さい. 次に, $x_n$ を問題の手順と逆の順序で取っていくことを考えます. つまり, $x_1 = a$ とし, $x_n$ が定まっているとき, $x_{n+1}$ を $(x_n,0)$ から $C:y=f(x)$ へ引いた2つの接線のうち一方と $C$ の接点の $x$ 座標とします. このようなことを行っても, 求める答えは変わりません.
$x_n$ が定まっているとき, $x_{n+1}$ の候補となる実数は2通り考えられますが, これらは $x_n$ によらず一方が負, もう一方が正となることを確かめられます. ここで, 次のような命題が成立します(単調性から明らか).
$x_1 = x_{21}$ となるような $\{x_n\}$ について, $x_1,x_2,...,x_{21}$ の正負の組み合わせ全て異なる.
よって, $x_2,...,x_{20}$ の正負の組み合わせのうち, $0 < x_1 \le k$ かつ $0 < x_{21} \le k$ とできるものの数(の2倍)を求めれば良いことが分かります($x_i$が相異なるという条件は後からどうにでもなるので無視します).
次のような事実(容易に確認できる)に注目すれば,
・$x_n > k$ のとき $x_{n+1}$ としてありえる負の値は $-k$ より大きい.
・$x_n \le k$ のとき $x_{n+1}$ としてありえる負の値は $-k$ より小さい.
・$x_n < -k$ のとき $x_{n+1}$ としてありえる正の値は $k$ より小さい.
・$x_n \ge -k$ のとき $x_{n+1}$ としてありえる正の値は $k$ より大きい.
条件を満たす正負の組の構造は, $x_{20}, x_{19}, ..., x_2$ の順に
負, 正, 負, ..., 正, 負, 負 ...(なんでもいい)...
というような形になることが分かります. つまり, 負と正を何回か交互に繰り返した後負が2回続いてそれ以降は何でも良いです. このような正負の列の数は $2^{17}+2^{15}+\cdots+2^1 + 1 = \frac{2^{19}+1}{3}$ 通りあります. 包除原理によって $x_1,...,x_{20}$ の中に重複があるものを取り除けば, 求める答えは
$2\times\left(\frac{2^{19}+1}{3} - \frac{2^9+1}{3} - \frac{2^3+1}{3} + \frac{2^1+1}{3}\right) = 349180$
です.