Description
在二维平面上,给定一个左下角位于 (0,0)(0,0)(0,0) 点,右上角位于 (n,n)(n,n)(n,n) 点的正方形,请你在该矩形中找到一个面积最小的多边形,并且满足以下条件:
该多边形是简单多边形(没有边自交的多边形,包括凸多边形和凹多边形);
该多边形的每个顶点都是整点;
给定正方形的每条边上都至少有一个多边形的顶点。
请问这个多边形的最小面积?
Input
第一行输入一个正整数 TTT 表示数据组数。
然后输入 T 行,每行 1 个正整数 n,表示给定正方形的边长。
1≤T≤3×1051\leq T\leq 3\times 10^51≤T≤3×105
1≤n≤1091\leq n\leq 10^91≤n≤109
Output
输出 TTT 行,每行一个浮点数表示该多边形的最小面积,请保留一位小数后输出。
Sample Input 1
2
1
2
Sample Output 1
0.5
1.0
Hint
样例一的解释如下图:
ΔABC\Delta ABCΔABC 是一个合法的最小多边形,面积为 0.5 。
样例二的解释如下图:
ΔAC\Delta ACΔACE是一个合法的最小多边形,面积为1;
同时下图的多边形EFCGEFCGEFCG也是一个合法的构造:
思路
1的时候很明显是0.5,题目已经给出
2的时候明显是1.0 题目也已经给出
n大于2的时候可以构造出下图这样的合法多边形
答案始终为1.0
代码
#include <bits/stdc++.h>
using namespace std;
int main()
{
int t;
cin>>t;
while(t--)
{
int n;
cin>>n;
if(n==1) cout<<0.5<<"\n";
else cout<<"1.0"<<"\n";
}
}