摘要: Description 求最长上升子序列。 求最长上升子序列。 Input 单测试用例。 第一行是一个正整数n,0 < n ≤ 3000 第二行是n个非负整数。 单测试用例。 第一行是一个正整数n,0 < n ≤ 3000 第二行是n个非负整数。 Output 两行结果。 第一行是最长上升子序列的长 阅读全文
posted @ 2018-05-15 21:42 shuai_hui 阅读(136) 评论(0) 推荐(0) 编辑
摘要: Description 给出一个m×n的矩阵,请输出它的最大子矩阵和。 给出一个m×n的矩阵,请输出它的最大子矩阵和。 Input 多测试用例,每个测试用例: 第一行是两个正整数m和n,表示该矩阵的行数和列数。1 < m, n < 400 接下来m行,每行n个整数,空格分隔。 多测试用例,每个测试用 阅读全文
posted @ 2018-05-15 21:40 shuai_hui 阅读(1309) 评论(0) 推荐(0) 编辑
摘要: Description 给出n个整数序列(可能为负数)组成的序列a1, a2, ..., an,求该序列形如的子段和的最大值。当所有整数均为负数时,定义最大子段和为0。 给出n个整数序列(可能为负数)组成的序列a1, a2, ..., an,求该序列形如的子段和的最大值。当所有整数均为负数时,定义最 阅读全文
posted @ 2018-05-15 21:37 shuai_hui 阅读(179) 评论(0) 推荐(0) 编辑
摘要: Description 背包体积为C,给出N个物品,每个物品占用体积为Vi,价值为Wi,每个物品要么至多取1件,要么至多取Mi件(Mi > 1),要么数量无限,在所装物品总体积不超过C的前提下所装物品的价值的和的最大值是多少? 背包体积为C,给出N个物品,每个物品占用体积为Vi,价值为Wi,每个物品 阅读全文
posted @ 2018-05-15 21:34 shuai_hui 阅读(151) 评论(0) 推荐(0) 编辑
摘要: (1)二进制的优化 这是一个多重背包的模板,也是十分好用的一种模板,因为这个比直接拆除01 背包来做 要省些时间。这是为啥呢,首先先由我讲一下为什么能换成01 背包吧。 举个例子。假如给了我们 价值为 2,但是数量却是10 的物品,我们应该把10给拆开,要知道二进制可是能够表示任何数的,所以10 就 阅读全文
posted @ 2018-05-15 21:32 shuai_hui 阅读(1980) 评论(0) 推荐(0) 编辑
摘要: Description 有重量和价值分别为 wi ( 1 ≤ wi ≤ 1015 )、vi ( 1 ≤ vi ≤ 1015 ) 的 n (1 ≤ n ≤ 40 )个物品。从这些物品中挑选总重量不超过 C (1 ≤ C ≤ 1015)的物品,求所选挑选方案中价值总和的最大值。 有重量和价值分别为 wi 阅读全文
posted @ 2018-05-15 21:17 shuai_hui 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://codeforces.com/contest/979/problem/C 大致题意 给出n个点,有n-1个边将他们链接。给出x,y,当某一路径中出现x....y时,此路不通。路径(u,v)和(v,u)是不同的。 思路:一开始大神是给每个点都用BFS找出能到的点的路径,同时记录 阅读全文
posted @ 2018-05-15 18:16 shuai_hui 阅读(121) 评论(0) 推荐(0) 编辑