小红的01串(easy)
时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 1024 M,其他语言2048 M
64bit IO Format: %lld

题目描述

\hspace{15pt}本题为问题的简单版本,两题的区别在于 T 的数据范围不同,且本题需要求解符合要求的 01 串的最短长度。

\hspace{15pt}小红定义一个仅由字符 \texttt{`0'}\texttt{`1'} 组成的字符串(简称 01 串)的权值为:
\hspace{23pt}\bullet\,仅由 \texttt{`1'} 构成的连续子串的数量。
\hspace{15pt}现在,给定一个正整数 k,你需要找到最短的权值为 k 的 01 串,输出该最小长度。

【名词解释】
\hspace{15pt}连续子串:从原字符串中,连续的选择一段字符(可以全选、可以不选)得到的新字符串。

输入描述:

\hspace{15pt}每个测试文件均包含多组测试数据。第一行输入一个整数 T\left(1\leqq T\leqq 10^5\right) 代表数据组数,每组测试数据描述如下:
\hspace{15pt}第一行输入一个整数 k\left(1\leqq k\leqq 2\times 10^5\right)

输出描述:

\hspace{15pt}对于每一组测试数据,新起一行,输出一个整数,表示权值 k 的 01 串的最小长度。
示例1

输入

复制
2
3
20

输出

复制
2
9

说明

\hspace{15pt}对于第一组测试数据,可以构造 \texttt{,我们可以证明这是最短的权值为 3 的 01 串。
\hspace{15pt}对于第二组测试数据,可以构造 \texttt{