【BZOJ】【1024】【SCOI2009】生日快乐
枚举
想到以后一秒钟变水题……
一开始我想:这不是可以随便切吗……但是突然想到:第一刀,必须切在n等分点上!因为要求最后每块的大小相等,那么同理,比如总共要切成7块,第一刀切成了$\frac{3}{7}$和$\frac{4}{7}$两部分,那么后面再切的时候就必须在三等分点和四等分点上切!
所以dfs一下,枚举是在长边上切还是短边上切,以及是在第几个n等分点上切就可以了……→_→
对了,当n==1的时候得特判一下,ans=长边/短边。我WA在第一个点上就是因为这个……(一开始居然会想着n=1的时候ans=1.000000我也是醉了……)
/**************************************************************
Problem: 1024
User: Tunix
Language: C++
Result: Accepted
Time:16 ms
Memory:804 kb
****************************************************************/ //BZOJ 1024
#include<cstdio>
#include<algorithm>
#define F(i,j,n) for(int i=j;i<=n;++i)
using namespace std;
int n;
double dfs(double x,double y,int n){
if (x<y) swap(x,y);
if (n==) return x/y;
else{
double ans=1e16;
F(i,,n/){
ans=min(ans,max(dfs(x*i/n,y,i),dfs(x*(n-i)/n,y,n-i)));
ans=min(ans,max(dfs(x,y*i/n,i),dfs(x,y*(n-i)/n,n-i)));
}
return ans;
}
}
int main(){
double x,y,ans=1e16;
scanf("%lf%lf%d",&x,&y,&n);
if (x<y) swap(x,y);
if (n==) ans=x/y;
else F(i,,n/){
ans=min(ans,max(dfs(x*i/n,y,i),dfs(x*(n-i)/n,y,n-i)));
ans=min(ans,max(dfs(x,y*i/n,i),dfs(x,y*(n-i)/n,n-i)));
}
printf("%.6lf\n",ans);
return ;
}
1024: [SCOI2009]生日快乐
Time Limit: 1 Sec  Memory Limit: 162 MB
Submit: 1622  Solved: 1134
[Submit][Status][Discuss]
Description
windy
的生日到了,为了庆祝生日,他的朋友们帮他买了一个边长分别为 X 和 Y 的矩形蛋糕。现在包括windy,一共有 N
个人来分这块大蛋糕,要求每个人必须获得相同面积的蛋糕。
windy主刀,每一切只能平行于一块蛋糕的一边(任意一边),并且必须把这块蛋糕切成两块。这样,要切成 N 块蛋糕,windy必须切 N-1
次。为了使得每块蛋糕看起来漂亮,我们要求 N 块蛋糕的长边与短边的比值的最大值最小。你能帮助windy求出这个比值么?
Input
包含三个整数,X Y N。
Output
包含一个浮点数,保留6位小数。
Sample Input
Sample Output
HINT
【数据规模和约定】
100%的数据,满足 1 <= X,Y <= 10000 ; 1 <= N <= 10 。
Source
【BZOJ】【1024】【SCOI2009】生日快乐的更多相关文章
- BZOJ 1024: [SCOI2009]生日快乐 dfs
		
1024: [SCOI2009]生日快乐 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://www.lydsy.com/JudgeOnline/p ...
 - BZOJ 1024 [SCOI2009]生日快乐 (搜索)
		
1024: [SCOI2009]生日快乐 Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 3025 Solved: 2201[Submit][Statu ...
 - BZOJ 1024: [SCOI2009]生日快乐
		
Description 将一个 \(x\times y\) 的矩形分成 \(n\) 块,让最长边:最短边 最小. Sol 搜索. \(n\) 只有 \(10\) 写一个类似于记搜的东西就好了. Cod ...
 - bzoj 1024 [SCOI2009]生日快乐——模拟
		
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1024 可以枚举这边放多少块.那边放多少块. 注意精度.不要每次用x*y/base算有多少块, ...
 - BZOJ.1024.[SCOI2009]生日快乐(记忆化搜索)
		
题目链接 搜索,枚举切的n-1刀. 对于长n宽m要切x刀,可以划分为若干个 长n'宽m'要切x'刀 的子问题,对所有子问题的答案取max 对所有子问题的方案取min 就是当前状态答案. 这显然是会有很 ...
 - BZOJ 1024 SCOI2009 生日快乐 暴搜
		
思路:eng...按照题意搜就好了 (一定要注意题面的n<=10--) 枚举断点...反正n<=10不怂 //By SiriusRen #include <cstdio> #i ...
 - BZOJ 1023 [SCOI2009]生日快乐
		
1024: [SCOI2009]生日快乐 Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 1729 Solved: 1219[Submit][Statu ...
 - 【BZOJ】1024: [SCOI2009]生日快乐(dfs)
		
http://www.lydsy.com/JudgeOnline/problem.php?id=1024 果然现在弱到连搜索都不会了么..... 一直想二分...但是无论如何也推不出怎么划分... Q ...
 - 1024: [SCOI2009]生日快乐 - BZOJ
		
Description windy的生日到了,为了庆祝生日,他的朋友们帮他买了一个边长分别为 X 和 Y 的矩形蛋糕.现在包括windy,一共有 N 个人来分这块大蛋糕,要求每个人必须获得相同面积的蛋 ...
 - 1024: [SCOI2009]生日快乐
		
暴力题,N<=10,没注意到平均分,读题真是.. 我们对于一个矩形分成两块进行搜.然后求较大值. ans=min(ans,max(dfs(x,y/n*i,i),dfs(x,y/n*(n-i),n ...
 
随机推荐
- form表单无刷新提交文件(iframe)
			
先看一段代码(PHP例子) 1.表单代码(form.html): <iframe name="testIframeName" style="display:none ...
 - 基于jQuery编写的横向自适应幻灯片切换特效
			
基于jQuery编写的横向自适应幻灯片切换特效 全屏自适应jquery焦点图切换特效,在IE6这个蛋疼的浏览器兼容性问题上得到了和谐,兼容IE6. 适用浏览器:IE6.IE7.IE8.360.Fire ...
 - 安装pdo.so和pdo_mysql.so还有pcntl.so扩展到php中
			
1.下载源码,解压tar -xzvf php-5.4.20.tar.gz cd /usr/local/src/php-5.4.20/ext/pdo /usr/local/php/bin/phpize ...
 - Javascript的四种继承方式
			
在Javascript中,所有开发者定义的类都可以作为基类,但出于安全性考虑,本地类和宿主类不能作为基类,这样可以防止公用访问编译过的浏览器级的代码,因为这些代码可以被用于恶意攻击. 选定基类后,就可 ...
 - 等价表达式 (codevs 1107)题解
			
[问题描述] 明明进了中学之后,学到了代数表达式.有一天,他碰到一个很麻烦的选择题.这个题目的题干中首先给出了一个代数表达式,然后列出了若干选项,每个选项也是一个代数表达式,题目的要求是判断选项中哪些 ...
 - xml结构
			
一.XmlHelper using System; using System.Collections.Generic; using System.Linq; using System.Web; usi ...
 - WCF中使用控件的委托,线程中的UI委托
			
UI界面: <Window x:Class="InheritDemo.Window1" xmlns="http://schemas.microsoft.com/wi ...
 - html/css  盒子布局 Margin 、Padding 、border 以及 清除浮动的知识 (学习HTML过程中的小记录)
			
html/css 盒子布局 Margin .Padding .border 以及 清除浮动的知识 (学习HTML过程中的小记录) 作者:王可利(Star·星星) width 是"宽 ...
 - PBOC规范(2.0->3.0)对照表
			
1 数据方面 TAG PBOC2.0 ...
 - oracle11g 新特性 - rman自动备份控制文件延迟
			
OS: Oracle Linux Server release 5.7 DB: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 -6 ...