BZOJ1197 [HNOI2006]花仙子的魔法
其实是一道奇怪的DP题,蒟蒻又不会做。。。
看了Vfk的题解才算弄明白是怎么一回事:
令f[i, j]表示i维有j个球时最大切割部分,则
f[i, j] = f[i, j - 1] + f[i - 1, j - 1]
其中第一部分很好理解,就是前j - 1个球的最大个数,然后就是第二部分的理解:
j - 1个球后再加一个球,于是最优的情况就是最后一个球与前j - 1个球都相交
而求面试i - 1维的,相交出来的是i - 2维空间 <=> i - 1维空间用j - 1个i - 2个球划分的最优个数。
证毕。。。
/**************************************************************
Problem:
User: rausen
Language: Pascal
Result: Accepted
Time: ms
Memory: kb
****************************************************************/ var
n, m : longint;
f : array[.., ..] of int64;
cal : array[.., ..] of boolean; procedure pre_work;
var
i, j : longint; begin
for i := to n do begin
f[i, ] := ;
cal[i, ] := true;
end;
for j := to m do begin
f[, j] := * j;
cal[, j] := true;
end;
end; function calc(x, y : longint) : int64;
begin
if cal[x, y] then exit(f[x, y]);
cal[x, y] := true;
f[x, y] := calc(x - , y - ) + calc(x, y - );
exit(f[x, y]);
end; begin
readln(m, n);
fillchar(cal, sizeof(cal), false);
pre_work;
writeln(calc(n, m));
end.
(p.s. 程序是P的不要怪我>.<。。。是以前写的。。。!)
BZOJ1197 [HNOI2006]花仙子的魔法的更多相关文章
- bzoj千题计划183:bzoj1197: [HNOI2006]花仙子的魔法
		
http://www.lydsy.com/JudgeOnline/problem.php?id=1197 题意转化:在n维空间中放m个n维球,问最多将空间分成几部分 f[i][j] 表示在i维空间中放 ...
 - 1197: [HNOI2006]花仙子的魔法
		
1197: [HNOI2006]花仙子的魔法 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 762 Solved: 443[Submit][Stat ...
 - BZOJ 1197: [HNOI2006]花仙子的魔法【DP】
		
Description 相传,在天地初成的远古时代,世界上只有一种叫做“元”的花.接下来,出 现了一位拥有魔法的花仙子,她能给花附加属性,从此,“元”便不断变异,产生了大千世界千奇百怪的各种各样的花. ...
 - 1197: [HNOI2006]花仙子的魔法 - BZOJ
		
Description Input 包含两个整数,并用一个空格隔开,第一个整数表示实施魔法的次数m,第二个整数表示空间的维数n.其中,1≤m≤100,1≤n≤15. Output 仅包含一个整数,表示 ...
 - HNOI2006 花仙子的魔法
		
题目描述 题解: 考试的时候手画打表,然后半个小时磨了个式子:$$f[i][j]=f[i-1][j-1]+f[i][j-1]$$ 交上去$A$的时候都蒙了. 考后才知道原因. 考虑$n$维空间内原来有 ...
 - BZOJ 1197 [HNOI2006]花仙子的魔法 (数学题)
		
题面:洛谷传送门 BZOJ传送门 非常有意思的一道数学题,浓浓的$CF$风,然而我并没有想出来.. 我们想把一个$n$维空间用$n$维球分成尽可能多的块 而新增加一个$n$维球时,肯定要尽可能多地切割 ...
 - BZOJ 1197 花仙子的魔法(递推)
		
数学归纳法. dp[i][j]=dp[i][j-1]+dp[i-1][j-1]. # include <cstdio> # include <cstring> # includ ...
 - bzoj AC倒序
		
Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem ...
 - BZOJ一句话
		
一句话题解集合. 1061: [Noi2008]志愿者招募 单纯形,运用对偶原理转化过来,变成标准形然后单纯性裸上即可. #include<cmath> #include<cstdi ...
 
随机推荐
- Java集合总结(List、Map、Set)
			
集合的引入 当我们有种需求,需要存储多个元素的结构时,我们前面讲过数组,数组可以存储.但是数组也有它的弊端,使用的时候,必须先定义好长度,也就是数组的长度是固定,不能根据我们的需求自动变长或者变短. ...
 - CMD运行后关闭CMD 的窗口命令
			
在命令前加上Start 例(打开服务管理):start services.msc
 - boot sector FAT
 - hdu Naive Operations 线段树
			
题目大意 题目链接Naive Operations 题目大意: 区间加1(在a数组中) 区间求ai/bi的和 ai初值全部为0,bi给出,且为n的排列,多组数据(<=5),n,q<=1e5 ...
 - 啤酒和饮料|2014年蓝桥杯B组题解析第一题-fishers
			
啤酒和饮料|2014年第五届蓝桥杯B组题解析第一题-fishers 啤酒和饮料 啤酒每罐2.3元,饮料每罐1.9元.小明买了若干啤酒和饮料,一共花了82.3元. 我们还知道他买的啤酒比饮料的数量少,请 ...
 - 【第二十六章】 hystrix-dashboard + turbine
			
一.使用turbine的意义 引入多个hystrix stream: 1.使用hystrix-dashboard的可以添加多个stream的功能 图中添加的两个stream会在真正monitor的时候 ...
 - [Shiro] - 基于URL配置动态权限
			
基于shiro进阶 更改了数据库表 之前的PageController是通过@RequiresPermissions和@RequiresRoles进行是否有权限/是否有角色的判定调用@RequestM ...
 - JavaScript权威指南2.词法结构
			
字符集 1.用16位的Unicode字符集编写的,可以表示地球上通用的每一种书面语言.国际化 2.每个字符都是用两个字节表示的 3.大小写敏感:关键字.变量.函数名.标识符:HTML并不区分大小写 H ...
 - Linux——系统引导流程学习简单笔记
			
开启电源: 固件 firmware(CMOS/BIOS) → POST 加电自检 对硬件就行检查 ↓ 自举程序 BootLoader(GRUB) → 载入内核 ↓ 载入内核 Kernel 1:驱动硬件 ...
 - ICM Technex 2017 and Codeforces Round #400 (Div. 1 + Div. 2, combined)  D. The Door Problem 2-SAT
			
题目链接:http://codeforces.com/contest/776/problem/D D. The Door Problem time limit per test 2 seconds m ...