這道題目視枚舉題。直接枚舉各個長度,然后求最小面積即可。
#include<iostream>
using namespace std;
int main()
{
int test;
cin>>test;
while(test--)
{
int n;
cin>>n;
int min=100000000;
int area;
int k;
for(int i=1;i<=n;i++)
{
for(int j=1;i*j<=n;j++)
{
if(n%(i*j)==0)
{
k=n/(i*j);
area=i*j+i*k+j*k;
if(area<min)
min=area;
}
}
}
cout<<min*2<<endl;
}
return 0;
}
posted on 2010-08-18 17:01
崔佳星 閱讀(249)
評論(0) 編輯 收藏 引用