Codeforces Round 382 (Div. 1)
B
Taxes
Codeforces
未评级
原题
← AC →
翻译中…

Mr. Funt now lives in a country with a very specific tax laws. The total income of mr. Funt during this year is equal to $*n*$ ($*n* ≥ 2$) burles and the amount of tax he has to pay is calculated as the maximum divisor of $*n*$ (not equal to $*n*$, of course). For example, if $*n* = 6$ then Funt has to pay $3$ burles, while for $*n* = 25$ he needs to pay $5$ and if $*n* = 2$ he pays only $1$ burle.

翻译中…

As mr. Funt is a very opportunistic person he wants to cheat a bit. In particular, he wants to split the initial $*n*$ in several parts $*n*_{1} + *n*_{2} + ... + *n*_{*k*} = *n*$ (here $*k*$ is arbitrary, even $*k* = 1$ is allowed) and pay the taxes for each part separately. He can't make some part equal to $1$ because it will reveal him. So, the condition $*n*_{*i*} ≥ 2$ should hold for all $*i*$ from $1$ to $*k*$.

翻译中…

Ostap Bender wonders, how many money Funt has to pay (i.e. minimal) if he chooses and optimal way to split $*n*$ in parts.

翻译中…

Input

翻译中…

The first line of the input contains a single integer $*n*$ ($2 ≤ *n* ≤ 2·10^{9}$) — the total year income of mr. Funt.

翻译中…

Output

翻译中…

Print one integer — minimum possible number of burles that mr. Funt has to pay as a tax.

翻译中…

样例

Input #1
4
Output #1
2
InputCopy OutputCopy
Input #2
27
Output #2
3
InputCopy OutputCopy
题目信息
题号
736B
时间限制
2 s
内存限制
256 MB

题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。