算法
ProMonkey_chen
这个作者很懒,什么都没留下…
展开
-
均分纸牌(贪心算法)
【题目描述】有n堆纸牌,编号分别为 1,2,…, n。每堆上有若干张,但纸牌总数必为n的倍数。可以在任一堆上取若干张纸牌,然后移动。移牌规则为:在编号为1的堆上取的纸牌,只能移到编号为 2 的堆上;在编号为 n 的堆上取的纸牌,只能移到编号为n-1的堆上;其他堆上取的纸牌,可以移到相邻左边或右边的堆上。现在要求找出一种移动方法,用最少的移动次数使每堆上纸牌数都一样多。例如 n=4,4...原创 2019-08-20 16:02:17 · 1240 阅读 · 0 评论 -
codevs1010 过河卒
题目描述Description 如图,A 点有一个过河卒,需要走到目标 B 点。卒行走规则:可以向下、或者向右。同时在棋盘上的任一点有一个对方的马(如上图的C点),该马所在的点和所有跳跃一步可达的点称为对方马的控制点。例如上图 C 点上的马可以控制 9 个点(图中的P1,P2 … P8 和 C)。卒不能通过对方马的控制点。 棋盘用坐标表示,A 点(0,0)、B 点(n,m)(n,...原创 2019-09-02 15:02:46 · 183 阅读 · 0 评论 -
codevs1014 装箱问题
题目描述Description有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30),每个物品有一个体积(正整数)。要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。输入描述Input Description一个整数v,表示箱子容量一个整数n,表示有n个物品接下来n个整数,分别表示这n个物品的各自体积输出描述O...原创 2019-09-03 18:55:34 · 169 阅读 · 0 评论 -
贪心三两道
1、饼干分配Description:Assume you are an awesome parent and want to give your children some cookies. But, you should give each child at most one cookie. Each child i has a greed factor gi, which is th...原创 2019-09-13 15:59:58 · 197 阅读 · 0 评论 -
LeetCode279. Perfect Squares
Description:Given a positive integern, find the least number of perfect square numbers (for example,1, 4, 9, 16, ...) which sum ton.Example 1:Input: n = 12Output: 3 Explanation: 12 = 4 ...原创 2019-09-13 22:51:28 · 118 阅读 · 0 评论 -
LeetCode127. Word Ladder
Description:Given two words (beginWordandendWord), and a dictionary's word list, find the length of shortest transformation sequence frombeginWordtoendWord, such that:Only one letter can be ...原创 2019-09-14 12:02:08 · 167 阅读 · 0 评论 -
LeetCode695. Max Area of Island
Description:Given a non-empty 2D arraygridof 0's and 1's, anislandis a group of1's (representing land) connected 4-directionally (horizontal or vertical.) You may assume all four edges of the ...原创 2019-09-14 17:17:20 · 156 阅读 · 0 评论 -
DFS三两道
1、LeetCode200.Number of IslandsDescription:Given a 2d grid map of'1's (land) and'0's (water), count the number of islands. An island is surrounded by water and is formed by connecting adjacent...原创 2019-09-15 17:06:02 · 214 阅读 · 0 评论 -
0-1背包问题
有一个容量为 N 的背包,要用这个背包装下物品的价值最大,这些物品有两个属性:体积 w 和价值 v。定义一个二维数组 dp 存储最大价值,其中 dp[i][j] 表示前 i 件物品体积不超过 j 的情况下能达到的最大价值。设第 i 件物品体积为 w,价值为 v,根据第 i 件物品是否添加到背包中,可以分两种情况讨论:第 i 件物品没添加到背包,总体积不超过 j 的前 i 件物品的最大价值就...原创 2019-09-16 16:29:10 · 204 阅读 · 0 评论 -
codevs1427 特种部队
题目描述Description某特种部队接到一个任务,需要潜入一个仓库。该部队士兵分为两路,第一路士兵已经在正面牵制住了敌人,第二路士兵正在悄悄地从后方秘密潜入敌人的仓库。当他们到达仓库时候,发现这个仓库的锁是一把很诡异的电子锁,上面是一排按钮,每个按钮上都有一个数字。10 秒钟后,总部返回了该锁的技术信息。要解开这把锁,首先要从左边的第一个按钮开始向右按动,中间可以跳过某些按钮,按动...原创 2019-09-01 16:38:28 · 422 阅读 · 0 评论 -
线段覆盖问题
线段覆盖 给定x轴上的N(0<N<100)条线段,每个线段由它的二个端点a_I和b_I确定,I=1,2,……N.这些坐标都是区间(-999,999)的整数。有些线段之间会相互交叠或覆盖。请你编写一个程序,从给出的线段中去掉尽量少的线段,使得剩下的线段两两之间没有内部公共点。所谓的内部公共点是指一个点同时属于两条线段且至少在其中一条线段的内部(即除去端点的部分)。输入...原创 2019-08-20 19:53:59 · 3664 阅读 · 0 评论 -
codevs1166 矩阵取数游戏
题目描述Description【问题描述】帅帅经常跟同学玩一个矩阵取数游戏:对于一个给定的n*m 的矩阵,矩阵中的每个元素aij均为非负整数。游戏规则如下:1. 每次取数时须从每行各取走一个元素,共n个。m次后取完矩阵所有元素;2. 每次取走的各个元素只能是该元素所在行的行首或行尾;3. 每次取数都有一个得分值,为每行取数的得分之和,每行取数的得分= 被取走的元素值*2^i,...原创 2019-08-25 15:18:41 · 252 阅读 · 0 评论 -
动态规划算法的理解
动态规划(dynamic programming)与分治方法类似,都是通过组合子问题的解来求解原问题。但是动态规划算法对每个子子问题只求解一次,将其保存在一个表格中,从而无需每次求解一个子子问题时都重复计算,避免来这种不必要对对计算工作。 通常按照一下四个步骤来设计一个动态规划算法:刻画一个最优对结构特征。 递归地定义最优解对值。 计算最优解的值,通常采用自...原创 2019-08-22 22:50:10 · 1130 阅读 · 0 评论 -
codevs1004 四子连棋
题目描述Description在一个4*4的棋盘上摆放了14颗棋子,其中有7颗白色棋子,7颗黑色棋子,有两个空白地带,任何一颗黑白棋子都可以向上下左右四个方向移动到相邻的空格,这叫行棋一步,黑白双方交替走棋,任意一方可以先走,如果某个时刻使得任意一种颜色的棋子形成四个一线(包括斜线),这样的状态为目标棋局。● ○ ● ○ ● ○ ● ●...原创 2019-08-27 16:41:25 · 253 阅读 · 0 评论 -
POJ2251:Dungeon Master(BFS)
DescriptionYou are trapped in a 3D dungeon and need to find the quickest way out! The dungeon is composed of unit cubes which may or may not be filled with rock. It takes one minute to move one un...原创 2019-08-28 11:07:26 · 125 阅读 · 0 评论 -
poj3579 二分搜索+二分查找
DescriptionGivenNnumbers,X1,X2, ... ,XN, let us calculate the difference of every pair of numbers: ∣Xi-Xj∣ (1 ≤i<j≤N). We can getC(N,2)differences through this work, and now your tas...原创 2019-08-28 17:03:32 · 632 阅读 · 0 评论 -
LeetCode(17):电话号码的字母组合
题目描述:给定一个仅包含数字2-9的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。分析:其实这个题就是要找出对应数字的字母的所有组合。从所有组合这个性质来思考,应该用深度优先搜索的算法。代码如下:public class Test { private static String[] strs = {...原创 2019-08-30 16:25:02 · 109 阅读 · 0 评论 -
PT07Z - Longest path in a tree
题目信息:You are given an unweighted, undirected tree. Write a program to output the length of the longest path (from one node to another) in that tree. The length of a path in this case is number of e...原创 2019-09-01 10:25:53 · 316 阅读 · 0 评论 -
二分法
1、LeetCode153. Find Minimum in Rotated Sorted ArrayDescription:Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand.(i.e., [0,1,2,4,5,6,7]might become...原创 2019-09-17 14:57:54 · 231 阅读 · 0 评论