正文

PKU ACM 1319--Pipe Fitters2009-09-16 23:50:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/shao/47810.html

分享到:

    #include<iostream>#include<cmath>using namespace std; int grid(float width,float height)// use string ???{ int h=(int)height; int w=(int)width; return h*w;} int skew1(float width,float height){ int m1=(int)(width-0.5),n1=(int)((2*(height-1)/sqrt(3.0))+1); int m2=(int)(height-0.5),n2=(int)((2*(width-1)/sqrt(3.0))+1); return m1*n1>m2*n2? m1*n1:m2*n2;} int skew2(float width,float height){ int m1=(int)width,n1=(int)((2*(height-1)/sqrt(3.0))+1); int m2=(int)height,n2=(int)((2*(width-1)/sqrt(3.0))+1); int N1,N2; if(n1%2==0)  N1=int(m1*n1-n1/2); else   N1=int(m1*n1+n1/2-0.5); if(n2%2==0)  N2=int(m2*n2-n2/2); else   N2=int(m2*n2+n2/2-0.5); return N1>N2? N1:N2;} int main(){ float w,h; int max=0; while(cin>>w>>h) {  if(grid(w,h)>skew1(w,h)){   if(grid(w,h)>=skew2(w,h))    cout<<grid(w,h)<<" grid\n";   else    cout<<skew2(w,h)<<" skew\n";  }  else  {   if(skew1(w,h)>skew2(w,h))    cout<<skew1(w,h)<<" skew\n";   else    cout<<skew2(w,h)<<" skew\n";  } } return 0;}      

阅读(1545) | 评论(1)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

loading...
您需要登录后才能评论,请 登录 或者 注册