
MOOC算法基础
SeanY1998
这个作者很懒,什么都没留下…
展开
-
【MOOC】【枚举】4.熄灯问题——位运算
Description 有一个由按钮组成的矩阵,其中每行有6个按钮,共5行。每个按钮的位置上有一盏灯。当按下一个按钮后,该按钮以及周围位置(上边、下边、左边、右边)的灯都会改变一次。即,如果灯原来是点亮的,就会被熄灭;如果灯原来是熄灭的,则会被点亮。在矩阵角上的按钮改变3盏灯的状态;在矩阵边上的按钮改变4盏灯的状态;其他的按钮改变5盏灯的状态。Input 第一行是一个正整数N,表示需要解决的案例原创 2017-08-21 13:31:14 · 505 阅读 · 0 评论 -
【MOOC】【枚举】a.特殊密码锁——位运算
总时间限制: 1000ms 内存限制: 1024kB 描述 有一种特殊的二进制密码锁,由n个相连的按钮组成(n<30),按钮有凹/凸两种状态,用手按按钮会改变其状态。然而让人头疼的是,当你按一个按钮时,跟它相邻的两个按钮状态也会反转。当然,如果你按的是最左或者最右边的按钮,该按钮只会影响到跟它相邻的一个按钮。当前密码锁状态已知,需要解决的问题是,你至少需要按多少次按钮,才能将密码锁转变为所期望的原创 2017-08-21 23:03:19 · 525 阅读 · 0 评论 -
【动态规划】 POJ1088 滑雪问题
DescriptionMichael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道载一个区域中最长底滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子 1 2 3 4 516 17 18 19 615 24 25 20 714 23 22 21 81原创 2017-09-25 22:16:06 · 517 阅读 · 0 评论 -
POJ3624 0-1 背包问题
问题描述假设我们有n件物品,分别编号为1, 2…n。其中编号为i的物品价值为vi,它的重量为wi。为了简化问题,假定价值和重量都是整数值。现在,假设我们有一个背包,它能够承载的重量是W。现在,我们希望往包里装这些物品,使得包里装的物品价值最大化,那么我们该如何来选择装的东西呢?递推公式证明:我们需要选择n个元素中的若干个来形成最优解,假定为k个。那么对于这k个元素a1, a2, …ak来说原创 2017-09-27 09:21:36 · 658 阅读 · 0 评论 -
【动态规划】求最大上升子序列
问题描述 一个数的序列bi,当b1 < b2 < … < bS的时候,我们称这个序列是上升的。对于给定的一个序列(a1, a2, …, aN),我们可以得到一些上升的子序列(ai1, ai2, …, aiK),这里1 <= i1 < i2 < … < iK <= N。比如,对于序列(1, 7, 3, 5, 9, 4, 8),有它的一些上升子序列,如(1, 7), (3, 4, 8)等等。这些子序列原创 2017-09-20 23:26:32 · 457 阅读 · 1 评论 -
【动态规划】动态规划解题的一般思路——以数字三角形为例
/*(POJ1163)数字三角形 *在数字三角形 中寻找一条从顶部到底边的路径, * 使得路径上所经过的数字之和最大,路径上的每一步都只能往左下或者右下走。 *只需要求处这个最大和即可,不必给出具体路径 输入格式: 5 // 三角形行数。下面是三角形 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 要求输出最大和原创 2017-09-20 22:37:51 · 795 阅读 · 0 评论 -
【MOOC】【分治】4.求排列的逆序数——归并排序的应用
题目来源:郭炜老师算法基础课 一、题目描述总时间限制: 1000ms 内存限制: 65536kB 描述 在Internet上的搜索引擎经常需要对信息进行比较,比如可以通过某个人对一些事物的排名来估计他(或她)对各种不同信息的兴趣,从而实现个性化的服务。对于不同的排名结果可以用逆序来评价它们之间的差异。考虑1,2,…,n的排列i1,i2,…,in,如果其中存在j,k,满足 j < k原创 2017-09-14 23:46:26 · 424 阅读 · 0 评论