首页 > 代码库 > 【不可能的任务20/200】bzoj1024搜索
【不可能的任务20/200】bzoj1024搜索
进度1/10mark(感觉完不成了)
事实上我刚看到题目一下子慌了,,,我在想怎么二分一块的长宽,然后验证
然而极其难写
于是想有没有暴力,举一些例子模拟一下
然后发现切割是有很明显的限制的:每次切割两边的面积一定是整数比,于是每次可以割的地方都不到10了
那就只能暴力了
1 #include <cstdio> 2 #define INF 100000 3 int x,y,n; 4 inline double min(double a,double b){return(a<b)?a:b;} 5 inline double max(double a,double b){return(a>b)?a:b;} 6 double find(double x,double y,int n) 7 { 8 if(n==1) return(x>y)?(x/y):(y/x); 9 double ans=INF;10 for(int i=1;i<=n/2;i++)11 ans=min(ans,min(max(find(x/n*i,y,i),find(x/n*(n-i),y,n-i)),max(find(x,y/n*i,i),find(x,y/n*(n-i),n-i))));12 return ans;13 }14 int main()15 {16 scanf("%d%d%d",&x,&y,&n);17 printf("%.6f",find(x,y,n));18 return 0;19 }
【不可能的任务20/200】bzoj1024搜索
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。