#include<stdio.h> #include<string.h> #include<ctype.h> #include<math.h> #include<iostream> #include<string> #include<set> #include<map> #include<vector> #include<queue> #include<bitset> #include<algorithm> #include<time.h> using namespace std; #define MS(x,y) memset(x,y,sizeof(x)) #define MC(x,y) memcpy(x,y,sizeof(x)) #define MP(x,y) make_pair(x,y) #define ls o<<1 #define rs o<<1|1 typedef long long LL; typedef unsigned long long UL; typedef unsigned int UI; template <class T1,class T2>inline void gmax(T1 &a,T2 b){if(b>a)a=b;} template <class T1,class T2>inline void gmin(T1 &a,T2 b){if(b<a)a=b;} const int N=0,M=0,Z=1e9+7,ms63=1061109567; int casenum,casei; double n,m; void fre() { freopen("alex.in","r",stdin); freopen("alex.out","w",stdout); } int main() { fre(); while(~scanf("%lf%lf",&n,&m)) { if(n>m)swap(n,m);//n<=m printf("%.10f\n",max(min(n,m/3),min(n/2,m/2))); } } /* 【题意】 给你一个n*m的矩形,让你在其中画三个不溢出的等大正方形。 问这个正方形的边长最大为多少。 【类型】 水题 讨论 【分析】 其实无非两种情况,1*3\2*2,于是讨论一下即可。 【时间复杂度&&优化】 O(1) */