bzoj1024 [SCOI2009]生日快乐【dfs】
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1024
普通的深搜。
#include <cstdio>
#include <algorithm>
int xx, yy, n;
double slove(double x, double y, int left) {
	if (left == 1) {
		return x > y? x / y: y / x;
	}
	double rt = 1.0e100, tx = x / left, ty = y / left;
	for (int i = 1; i <= (left >> 1); ++i) {
		rt = std::min(rt, std::max(slove(tx * i, y, i), slove(tx * (left - i), y, left - i)));
		rt = std::min(rt, std::max(slove(x, ty * i, i), slove(x, ty * (left - i), left - i)));
	}
	return rt;
}
int main(void) {
	scanf("%d%d%d", &xx, &yy, &n);
	printf("%.6f\n", slove((double)xx, (double)yy, n));
	return 0;
}
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号