PKU 3475 Paper-, er, Transcript-Folding Game
http://poj.org/problem?id=3475
c*dの大きさの紙を、a*bの大きさの封筒に入れたい。
最低何回折れば入れられるかを求めろというような問題。
縦と横の割り当てを試して、小さい方を出力する。
PI sol(ll a,ll c,ll d){ PI ret(0,0); while(c<a){ c*=2; ret.F++; } while(d<a){ d*=2; ret.S++; } return ret; } main(){ ll a,b,c,d; while(cin>>a>>b>>c>>d){ PI ap=sol(c,a,b),bp=sol(d,a,b); cout<<min(ap.F+bp.S,ap.S+bp.F)<<endl; } }