问题 6486 -- 龙哥放棋子

6486: 龙哥放棋子★★★

时间限制: 1 Sec  内存限制: 128 MB
提交: 34  解决: 10
[提交][状态][命题人:]

题目描述

给定一个二维平面,需要在其上放置n 个棋子。棋子只能被放在整数坐标的点上。将棋子放在坐标点(x,y) 上的成本等于∣x∣+∣y∣ (其中∣a∣表示a的绝对值)。
放置n个棋子的成本等于其中最大的单个棋子的成本。
你需要在平面上布置n个棋子,使得每对棋子之间的欧几里得距离严格大于1 ,且成本尽可能小。

输入

第一行包含一个整数t(1≤t≤10000),表示测试数据组数。接下来t行,每行包含一个整数n(1≤n≤1e18),表示需要放置的棋子数量。

输出

对于每个测试用例,输出一个整数,表示在每对棋子之间的距离都必须严格大于1的情况下放置n个棋子的最小成本。
样例输入
Copy
4
1
3
5
975461057789971042
样例输出
Copy
0
1
2
987654321

提示

在第一个测试用例中,你可以把唯一的棋子放在坐标(0,0) 上,总成本为0+0=0。
在第二个测试用例中,你可以将棋子放在(−1,0),(0,1) 和 (1,0)上,成本分别为∣−1∣+∣0∣=1,∣0∣+∣1∣=1 和 ∣0∣+∣1∣=1。每对棋子之间的距离严格大于1(例如,(−1,0) 和(0,1)之间的距离等于2)。总成本等于max(1,1,1)=1。
在第三个测试用例中,你可以将棋子放在(−1,−1),(−1,1),(1,1),(0,0)和(0,2)上。总成本等于max(2,2,2,0,2)=2。

来源

 

[提交][状态]