WA一次,想当然开三次方
TLE一次,没有剪枝
AC了
水代码在此
#include<iostream>
#include<cmath>
using namespace std;
int main(){
int n,i,j,k,area,bi,bj,bk;
while(cin>>n){
area=(1*n*2+1)*2;
bi=1;
bk=n;
bj=1;
for(i=1;i<n;i++)
if(n%i==0){
for(j=1;j*i<n;j++){
k=n/i/j;
if(n==i*j*k&&area>((i*j+j*k+i*k)*2)){
bi=i;
bj=j;
bk=k;
area=(i*j+j*k+i*k)*2;
}
}
}
cout<<bi<<" "<<bj<<" "<<bk<<endl;
}
}