PKU 3536 Beer Refrigerator
http://poj.org/problem?id=3536
体積mの直方体の表面積を最小にしたい。
このときの幅、高さ、奥行きを求めろというような問題。
ただし全て整数とする。
割って計算する。
main(){ int n; cin>>n; int area=1+n*2; int a=1,b=1,c=n; for(int i=1;i*i<=n;i++){ if(n%i)continue; int m=n/i; for(int j=1;j*j<=m;j++){ if(m%j)continue; int ta=i*j+m/j*i+m; if(ta<area){ area=ta; a=i,b=j,c=m/j; } } } cout<<a<<' '<<b<<' '<<c<<endl; }