给出一个森林,每棵树均为一组物品,首先推出每棵树可以组成的物品种类。
然后是基本的分组背包模板。
即 最外层枚举组数,次外层枚举背包容量,内层枚举物品体积。
对于每棵树有 ans[root][i+j] = ans[root][ i ] + ans[son][ j ]。
题水数据也水,不多说了。
#include
#include
#include
#include
#in...
分类:
其他好文 时间:
2014-07-22 23:05:52
阅读次数:
387
Vasya's birthday is approaching and Lena decided to sew a patterned handkerchief to him as a present. Lena chose digits from 0 to n as
the pattern. The digits will form a rhombus. The largest digit ...
分类:
其他好文 时间:
2014-07-22 23:04:32
阅读次数:
412
漂浮法,顾名思义,就是一块块的往上飘。
以逆序来进行放置,即n to 1。逆序的好处在于放置一个矩形后,俯视看到的就是最终俯视该矩形应该看到的。因为挡着它的矩形在之前已经放置好了,所以可直接统计,为递归创造了条件。每放一个矩形,可以想象成将其扔入一密度很大的海水底部,海分成了n层,然后矩形开始向上浮。在上浮过程中若碰撞到其他的矩形则断裂成几个小矩形,继续上浮,直到浮出水面。于是想到用个递归来模拟...
题目链接:uva 278 - Chess
题目大意:给出一个n*m的棋盘,并且给出棋子的种类,问说在这个大小的棋盘上最多能放几个给定的棋子,棋子之间不能互相攻击。
解题思路:总共有4种棋子,那么就分类讨论。
马(骑士):
n或m为1的时候,肯定可以摆满,因为肯定不能互相攻击
n或者m为2时,这样放是最优的。
其他情况的或就是间隔放最优。
车:因为车的攻...
分类:
其他好文 时间:
2014-07-22 23:03:52
阅读次数:
290
fixed真的是一个很好的属性。特别是做弹层的时候。可惜的是“国内主流浏览器”IE6大大不支持。
一般的我们都会通过CSS中的表达式来解决这个问题。
.fixed {
position:absolute;
left:expression(eval(document.documentElement.scrollLeft));
top:expression(eval(document.doc...
分类:
其他好文 时间:
2014-07-22 23:03:15
阅读次数:
318
这样的题目虽然不难,但是要构建个数学公式还真不容易的。
做多了,居然有感觉了,可以感知到大概公式是什么样的,然后验证它。
本题公式就是:
S = n + (n-1) + (n-2) * 2 + (n - 3) * 3 ...
至于怎么想出来的?...
分类:
其他好文 时间:
2014-07-22 23:03:15
阅读次数:
276
第七章 F# 库(四)
打印(Microsoft.FSharp.Text.Printf)模块
打印(Printf)模块提供了以类型案例的方式格式化字符串的函数,打印模块中函数的第一个参数是值的占位符,它返回的函数需要为占位符提供值;占位符用百分号加一个表示类型的字母组成,表 7-2 是完整的清单。
表 7-2 打印模块的占位符和标记
标记
...
分类:
其他好文 时间:
2014-07-22 23:02:35
阅读次数:
383
Android提供了三种数据储存的方式,分别为:
1.文件储存——文件存储数据使用了Java中的IO操作来进行文件的保存和读取
2.SharedPreferences储存——SharedPreferences可以存取简单的数据
3.Sqlite储存——Sqlite是一个Android内建的轻量级数据库
下面会用三个章节分别介绍这三种储存方式
Tips:很多文章认为Andr...
分类:
移动开发 时间:
2014-05-01 18:12:10
阅读次数:
403
1:temp = array[i]*i: 2410.0 ms
2:temp = GET(array,i) *i: 2410.0 ms
3:temp = get(array,i)*i: 2950.0 ms
4:int a = get(array,i);temp = a*i: 3340.0 ms
5: int a = array[i];temp = a*i;: 1990.0...
分类:
其他好文 时间:
2014-04-30 22:25:38
阅读次数:
303
文件存储数据使用了Java中的IO操作来进行文件的保存和读取。针对文件的操作主要是以下三种:
1.创建或打开文件
2.读取文件
3.删除文件
创建文件:
1.通过Context.openFileOutput获取输出流
/*
* name 打开或创建文件的名称
* mode 打开或创建文件的模式
*/
FileOut...
分类:
移动开发 时间:
2014-04-30 22:23:39
阅读次数:
452