　$n \geq 3$ において，以下が成り立つ：
$$\begin{aligned}
a_{n+1} &= a_1 a_2 + \dots + a_{n-2} a_{n-1} + a_{n-1} a_{n} + a_{n} a_{1} \\\\
&= (a_{n} - a_{n-1} a_{1}) + a_{n-1} a_{n} + a_{n} a_{1} \\\\
&= a_{n} (1 + a_{n-1}) + a_{1} (a_{n} - a_{n-1}). \tag{☆}
\end{aligned}$$
以下，合同式は全て $2027$ を法としているものとする．(☆) で $n=862$ として，
$$a_{863} \equiv 6 × (1+2) + (6-2)a_{1} \equiv 4 a_{1} + 18$$
を得る．これにより，$n = 863$ とすることで
$$ 222 \equiv 7 × (4 a_{1} + 18) + a_{1} (4 a_{1} + 12) \equiv 4 {a_{1}}^2 + 40 a_{1} + 126$$
がわかる．これを解けば $a_{1} \equiv 2$ または $a_{1} \equiv -12$ が従うが，$0 \leq a_{1} \leq 1000$ により $a_{1} \equiv 2$ である．
これにより $a_{863} \equiv 26$ が，さらに (☆) で $n = 864$ とすることで $a_{865} \equiv \mathbf{305}$ が得られる． \
　ちなみに，$a_2\equiv 20$ とすれば条件をみたす数列が得られる．
公式解説
https://onlinemathcontest.com/contests/omcb022/editorial/8880
　整数列 $\lbrace a_n \rbrace\_{n=1,2,\ldots}$ が，$n\geq 3$ で以下をみたします：
$$a_n = a_1 a_2 + \dots + a_{n-2} a_{n-1} + a_{n-1} a_1$$
たとえば，
$$a_3 = a_1 a_2 + a_2 a_1, \quad a_4 = a_1 a_2 + a_2 a_3 + a_3 a_1$$
です．いま，$a_{861}, a_{862}, a_{864}$ を素数 $2027$ で割った余りがそれぞれ $2, 6, 222$ であり，かつ $0 \leq a_{1} \leq 1000$ であるとき，条件をみたす $\lbrace a_n \rbrace$ が存在し，$a_{865}$ を $2027$ で割った余りが一意に定まることが保証されるので，その余りを解答してください．