Codeforces Round 685 (Div. 2)
A
Subtract or Divide
Codeforces
800
原题
←B →
翻译中…

Ridbit starts with an integer $n$.

翻译中…

In one move, he can perform one of the following operations:

翻译中…
  • divide $n$ by one of its proper divisors, or
  • subtract $1$ from $n$ if $n$ is greater than $1$.
翻译中…

A proper divisor is a divisor of a number, excluding itself. For example, $1$, $2$, $4$, $5$, and $10$ are proper divisors of $20$, but $20$ itself is not.

翻译中…

What is the minimum number of moves Ridbit is required to make to reduce $n$ to $1$?

翻译中…

Input

翻译中…

The first line contains a single integer $t$ ($1 \leq t \leq 1000$) — the number of test cases.

翻译中…

The only line of each test case contains a single integer $n$ ($1 \leq n \leq 10^9$).

翻译中…

Output

翻译中…

For each test case, output the minimum number of moves required to reduce $n$ to $1$.

翻译中…

Note

翻译中…

For the test cases in the example, $n$ may be reduced to $1$ using the following operations in sequence

翻译中…

$1$

翻译中…

$2 \xrightarrow{} 1$

翻译中…

$3 \xrightarrow{} 2 \xrightarrow{} 1$

翻译中…

$4 \xrightarrow{} 2 \xrightarrow{} 1$

翻译中…

$6 \xrightarrow{} 2 \xrightarrow{} 1$

翻译中…

$9 \xrightarrow{} 3 \xrightarrow{} 2\xrightarrow{} 1$

翻译中…

样例

Input #1
6
1
2
3
4
6
9
Output #1
0
1
2
2
2
3
InputCopy OutputCopy
题目信息
题号
1451A
时间限制
1 s
内存限制
256 MB
标签
贪心
数学

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