ACM
浑元形意太极门
吾生而有涯,而学也无涯
展开
-
HDU 2845 Beans
原题目链接:HDU2845分类HDU 动态规划 贪心题意在图中取数,例如取了81之后,同一行的相邻两个不能取,还有81的上面那行和下面那行也不能取,问能取到的最大和是多少想法**dp的经典题目就是说这种选数的题,慢慢发现,dp的原则:处理子问题,根据子问题的最优解慢慢求得总的最优解,这个题目就是,先求我选一行中数的最大和,再求前i行的最大和,一直到n+1行得出来的不就是整个矩...原创 2018-11-18 18:39:19 · 420 阅读 · 0 评论 -
HDU 1069 Monkey and Banana
原题目链接:HDU1069分类HDU 动态规划 贪心题意题意是堆箱子、要求上面的箱子的长和宽都小于下面箱子的长和宽想法因为每块砖有三种摆法(高和底面积不同),可以把这三种情况当成不同的三块砖,加入brick数组中。注意,一定要分清长和宽,长要比宽长,这样在后面dp的过程中可以保证长边和长边比较、短边和短边比较。所以要么保证长比宽长,每次录入3个面要么每次录入6个面因为这...原创 2018-11-18 09:16:15 · 490 阅读 · 0 评论 -
HDU 1072 What Are You Talking About
原题目链接HDU1075分类HDU map STL题意给出一个“翻译-原文”的对应表,然后给出句子,要把句子中的原文都翻译出来。样例输入输出Sample InputSTART from fiwo hello difh mars riwosf earth fnnvk like fiiwj END START difh, i'm fiwo riwosf. i fi...原创 2018-11-18 09:16:56 · 447 阅读 · 0 评论 -
HDU 1072 Nightmare
原题目链接HDU1072分类HDU BFS DFS 搜索 剪枝题意走迷宫,并有炸到限时,初始值是6秒,为0秒时爆炸,每走一步消耗一秒,如果能在最短的时间内走出来输出最短的时间,否则输出-1。0代表墙、1代表路、2代表起点、3代表终点,4代表时间重置样例输入输出Sample Input33 32 1 11 1 01 1 34 82 1 1 0 1 1 1 01 0...原创 2018-11-18 09:17:40 · 471 阅读 · 0 评论 -
HDU 1016 Prime Ring Problem
原题目链接HDU1016分类HDU 素数 DFS题意输入一个数n,把1到n的自然数放到一个环里,保证相邻的两个数的和是素数。样例输入输出Sample Input68Sample OutputCase 1:1 4 3 2 5 61 6 5 2 3 4Case 2:1 2 3 8 5 6 7 41 2 5 8 3 4 7 61 4 7 6 5 8 3 21...原创 2018-11-18 09:18:23 · 456 阅读 · 0 评论 -
HDU 1015 Safecracker
原题目链接:HDU1015分类:HDU 暴力 回溯 DFS题意:给temp赋一个值,然后给出一个字符串(不会出现相同字母,即字符串最长26),从中选出5个字母最为v,w,x,y,z(A=1, B=2, …, Z=26)使之满足等式v - w^2 + x^3 - y^4 + z^5 = target ,并输出由这5个字母组成字典序最大的字符串,不存在输出no solution样例输入...原创 2018-11-18 09:19:07 · 530 阅读 · 0 评论 -
HDU 1010 Tempter of the Bone
原题目链接:HDU1010分类HDU 搜索 DFS 剪枝题意输入一个n*m的迷宫,和一个T:可以在迷宫中生存的最大时间。S为起点,D为终点。并且,每个格子只能踩一次,且只能维持一秒,然后该块地板就会塌陷。所以你必须每秒走一步,且到D点时,所用时间必须为T。想法常规DFS,需要回溯和剪枝:想要剩余时间刚好到终点:剩余时间必须大于当前位置与终点横纵坐标差之和剩余时间减去当前位置...原创 2018-11-18 09:19:47 · 420 阅读 · 0 评论 -
HDU 1160 FatMouse's Speed
原题目链接:HDU1160分类HDU 动态规划 最长上升子序列题意给出老鼠的体重和速度求最长的序列,使得体重递增,速度递减想法最长上升子序列变形还有他加上了一个并查集求最长上升子序列路径的东西代码/** * Author: GatesMa * Email: gatesma@foxmail.com * Todo: ACM Training * Date:2018...原创 2018-11-20 14:32:29 · 419 阅读 · 0 评论 -
LeetCode 945 使数组唯一的最小增量
原题目链接:LeetCode945分类LeetCode题意给定整数数组 A,每次 move 操作将会选择任意 A[i],并将其递增 1。返回使 A 中的每个值都是唯一的最少操作次数。样例输入输出输入:[1,2,2]**输出:**1**解释:**经过一次 move 操作,数组将变为 [1, 2, 3]。输入:[3,2,1,2,1,7]**输出:**6**解释:**经过 ...原创 2018-12-02 12:17:02 · 633 阅读 · 0 评论 -
LeetCode 946 验证栈序列
原题目链接:LeetCode946分类LeetCode题意给定 pushed 和 popped 两个序列,只有当它们可能是在最初空栈上进行的推入 push 和弹出 pop 操作序列的结果时,返回 true;否则,返回 false 。样例输入输出示例 1:**输入:**pushed = [1,2,3,4,5], popped = [4,5,3,2,1]**输出:**true*...原创 2018-12-02 12:17:32 · 1280 阅读 · 0 评论 -
LeetCode 947 验证栈序列
原题目链接:LeetCode947分类LeetCode题意在二维平面上,我们将石头放置在一些整数坐标点上。每个坐标点上最多只能有一块石头。现在,move 操作将会移除与网格上的另一块石头共享一列或一行的石头。我们最多能执行多少次 move 操作?样例输入输出示例 1:**输入:**stones = [[0,0],[0,1],[1,0],[1,2],[2,1],[2,2]]...原创 2018-12-02 12:18:19 · 934 阅读 · 0 评论 -
Codeforce 890 查找和替换模式
原题目链接:CodeForce890分类Codeforce 字符串题意模式匹配你有一个单词列表 words 和一个模式 pattern,你想知道 words 中的哪些单词与模式匹配。如果存在字母的排列 p ,使得将模式中的每个字母 x 替换为 p(x) 之后,我们就得到了所需的单词,那么单词与模式是匹配的。样例输入输出输入:words = ["abc","deq",&am原创 2018-11-29 17:10:53 · 472 阅读 · 0 评论 -
HDU 1078 FatMouse and Cheese
原题目链接:HDU1078分类HDU 动态规划 dfs 记忆化搜索题意题意就是在n的方阵中,从最左上角,每次横向或纵向最多走k步,每走一步都要求下一步的数字比上一步的数字更大,从起点开始走到一处求和求到一处,求出最大的和。样例输入输出Sample Input3 11 2 510 11 612 12 7-1 -1Sample Output37想法记忆化搜...原创 2018-11-26 22:43:56 · 422 阅读 · 0 评论 -
剑指offer矩形覆盖
原题目链接:剑指offer矩形覆盖分类剑指offer 递归题意用21的小矩形横着或者竖着去覆盖更大的矩形。请问用n个21的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?想法n<=0 直接返回0了n==1 有一种方法n==2 有2种方法n>2时考虑以下两种情况(1)第一块砖竖着放,那么还剩下n-1块砖摆成2*(n-1)的矩形,有f(n-1)种方法...原创 2018-11-30 12:54:19 · 459 阅读 · 0 评论 -
LeetCode 101 对称二叉树
原题目链接:LeetCode101分类LeetCode题意给定一个二叉树,检查它是否是镜像对称的。例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \3 4 4 3但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的: 1 / \ 2 2 \ \ 3...原创 2018-12-03 12:08:26 · 536 阅读 · 0 评论 -
LeetCode 102 [二叉树的层次遍历]
原题目链接:LeetCode102分类LeetCode题意给定一个二叉树,返回其按层次遍历的节点值。 (即逐层地,从左到右访问所有节点)。例如:给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其层次遍历结果:[[3],[9,20],[15,7]]样例输入输出见上...原创 2018-12-03 14:46:56 · 582 阅读 · 0 评论 -
leetcode 105 从前序与中序遍历序列构造二叉树
题意根据一棵树的前序遍历与中序遍历构造二叉树。注意:你可以假设树中没有重复的元素。例如,给出前序遍历 preorder = [3,9,20,15,7]中序遍历 inorder = [9,3,15,20,7]返回如下的二叉树: 3 / \ 9 20 / \ 15 7样例输入输出见上想法代码里有注释基本思想是递归分治,利用了先序遍历和中...原创 2018-12-06 11:26:13 · 425 阅读 · 0 评论 -
leetcode 106 从中序与后序遍历序列构造二叉树
题意根据一棵树的中序遍历与后序遍历构造二叉树。注意:你可以假设树中没有重复的元素。例如,给出中序遍历 inorder = [9,3,15,20,7]后序遍历 postorder = [9,15,7,20,3]返回如下的二叉树: 3 / \ 9 20 / \ 15 7样例输入输出见上想法代码里有注释基本思想是递归分治,利用了先序...原创 2018-12-06 12:13:04 · 781 阅读 · 0 评论 -
HDU 1175 连连看
原题目链接HDU1175分类HDU 搜索 DFS 剪枝题意连连看在一个棋盘中,放了很多的棋子。如果某两个相同的棋子,可以通过一条线连起来(这条线不能经过其它棋子),而且线的转折次数不超过两次,那么这两个棋子就可以在棋盘上消去。不好意思,由于我以前没有玩过连连看,咨询了同学的意见,连线不能从外面绕过去的,但事实上这是错的。现在已经酿成大祸,就只能将错就错了,连线不能从外围绕过。玩家鼠...原创 2018-11-18 09:15:10 · 436 阅读 · 0 评论 -
HDU 1242 Rescue
原题目链接HDU1242分类HDU 搜索 BFS 优先队列题意X代表卫兵,a代表终点,r代表起始点,.代表路,#代表墙路花费一秒,x花费两秒问到达终点的最少时间样例输入输出Sample Input7 8#.#####.#.a#..r.#..#x.....#..#.##...##...#..............Sample Output13想法...原创 2018-11-17 10:21:12 · 477 阅读 · 0 评论 -
HDU 2830 Matrix Swapping II
原题目链接:HDU2845分类HDU 动态规划 贪心题意给我们一个矩阵,问我们最大全1矩阵的面积。注意矩阵的每一列都可以交换。即HDU1505 HDU1506 的升级版想法dp[i][j] : 从a[i][j]往下有多少个1例如 :a:101110010001dp:201310020001然后每次对一行进行排序例如:第一行是 3210代码421m...原创 2018-11-18 19:28:50 · 442 阅读 · 0 评论 -
HDU 5707 Many Equal Substrings
原题目链接HDU5707分类CodeForces KMP题意给a,b,c三个串,看c,能否由a,b构成 不能交换a, b中字符顺序, 子序列思路dp[i][j]表示c的前i+j个字符,能否由a的前i个,b的前j个构成,dp[0][0]=1(用1表示能构成)状态转移:当a[i]==c[i+j]时,考虑dp[i-1][j],当b[j]=c[i+j]时,考虑dp[i][j-1]样...原创 2018-11-16 17:48:29 · 500 阅读 · 0 评论 -
CodeForces - 1029A Many Equal Substrings
原题目链接CodeForces - 1029A分类CodeForces KMP题意这题是给一个长度为n的字符串 要拼成一个新串使得原来的串在新串中出现k次,用kmp预处理一下首尾的相同前后缀长度,然后就行了Sample Input3 4aba3 2catSample Outputababababacatcat代码31ms/** * Author: Gat...原创 2018-11-16 17:50:31 · 446 阅读 · 0 评论 -
HDU 2159 FATE
原题目链接HDU1505分类HDU 动态规划 背包 完全背包 二维背包题意(经典dp)完全背包 二维背包这题是完全背包,设f[i][j]为杀第j只怪时耐久度为i的最大经验值,完全背包类型:有N种物品和一个容量为V 的背包,每种物品都有无限件可用。放入第i种物品的耗费的空间是Ci,得到的价值是Wi。求解:将哪些物品装入背包,可使这些物品的耗费的空间总和不超过背包容量,且价值总和最大...原创 2018-11-16 17:51:41 · 416 阅读 · 0 评论 -
HDU 1505 City Game
原题目链接HDU1505分类HDU 动态规划题意(dp)给你一个M*N的区域。R代表被占用,F代表空闲。每块空闲的区域价值3美金,求全部由空闲区域围成的矩形的价值样例输入输出Sample Input25 6R F F F F FF F F F F FR R R F F FF F F F F FF F F F F F5 5R R R R RR R R R R...原创 2018-11-16 17:53:41 · 453 阅读 · 0 评论 -
HDU 1506 Largest Rectangle in a Histogram
原题目链接HDU1506分类HDU 动态规划题意给你一个直方图,告诉你各个条形矩形的高度,求基线对齐构成的矩形中面积最大的矩形的面积对于每一个矩形。样例输入输出Sample Input7 2 1 4 5 1 3 34 1000 1000 1000 10000Sample Output84000想法对于每一个a[i],用dp找出a[i]左边和右边连续大于自己的...原创 2018-11-16 17:54:28 · 501 阅读 · 0 评论 -
HDU 1789 Doing Homework again
原题目链接:HDU1789分类HDU 动态规划 贪心题意给定n个任务的截止日期和不完成所扣的分数,每个任务完成需要一天,怎么做问最少扣的分数最小想法先按照score从大到小排序,如果score相等,则按照deadline从小到大排。然后开始选择,让当前的课排在其deadline上面,如果这一天已经被占用了,那么就往前循环,有位置了就安排,没了就ans+=score。代...原创 2018-11-19 10:30:13 · 483 阅读 · 0 评论 -
HDU 1025 Constructing Roads In JGShining's Kingdom
原题目链接:HDU1025分类HDU 动态规划 最长上升子序列题意两条平行线上有若干个点从左向右依次排开,给定若干条分别以两条平行线上已知点为端点的线段,取其中若干条互不相交的线段,问最多可取多少条,这里有个题解讲的很好,拿来用HDU1025题解样例输入输出Sample Input2 1 2 2 1 3 1 2 2 3 3 1 5 2 2 3 3 4 1 ...原创 2018-11-21 14:25:47 · 474 阅读 · 0 评论 -
HDU 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活
原题目链接:HDU2191分类HDU 动态规划 背包 0-1背包 完全背包题意看题就可以理解了,不难想法0-1背包多重背包代码15ms0-1背包/** * Author: GatesMa * Email: gatesma@foxmail.com * Todo: ACM Training * Date:2018/11/18 */#include <...原创 2018-11-19 11:02:35 · 632 阅读 · 0 评论 -
HDU 1231 最大连续子序列
原题目链接HDU1231分类HDU 动态规划 最大连续子序列题意(dp初步)求最大子序列和,并且要求记录该子序列的开头数字以及结束数字(其实这样一来就可以得到整个序列了)样例输入输出Sample Input6-2 11 -4 13 -5 -210-10 1 2 3 4 -5 -23 3 7 -2165 -8 3 2 5 01103-1 -5 -23-1 0...原创 2018-11-17 10:15:08 · 400 阅读 · 0 评论 -
HDU 2391 Filthy Rich
原题目链接HDU2391分类HDU 动态规划题意(dp初步)类似与数塔输入一张整数表,求从左上角到右下角按每次向右,向下,或者是右下这种方式行走,到达右下角时能够收集的最大财富;样例输入输出Sample Input13 41 10 8 80 0 1 80 27 0 4Sample OutputScenario #1:42想法数塔,经典dp,化为子问题,一...原创 2018-11-17 10:15:48 · 436 阅读 · 0 评论 -
HDU 2037 今年暑假不AC
原题目链接HDU2537分类HDU 贪心题意(经典贪心题目)给出电视节目的开始与结束时间,求能完整看完的节目个数最多样例输入输出Sample Input121 33 40 73 815 1915 2010 158 186 125 104 142 90Sample Output5想法先按结束时间从小到大排序,结束时间相同的按开始时间从小到大...原创 2018-11-17 10:16:25 · 398 阅读 · 0 评论 -
HDU 1800 Flying to the Mars
原题目链接HDU1800分类HDU 字典树题意求出数字出现最多的次数。当n=0时,输出1.样例输入输出Sample Input410203004523434Sample Output12想法(字典树,涉及到高级数据结构)每一个数字最长30位,用longlong也没用,所以要用字符串存储,自然想到了字典树,当然还有其他解法,map(时间勉强过)...原创 2018-11-17 10:17:31 · 401 阅读 · 0 评论 -
HDU 1257 最少拦截系统
原题目链接HDU1257分类HDU 贪心题意贪心专题某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能超过前一发的高度.某天,雷达捕捉到敌国的导弹来袭.由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹.怎么办呢?多搞几套系统呗!你说说倒蛮容易,成本呢?成本是个大问题...原创 2018-11-17 10:18:10 · 446 阅读 · 0 评论 -
HDU 1052 田忌赛马
原题目链接HDU1052分类HDU 贪心题意贪心专题田忌赛马(不知道上网搜一下回来)每次输入一个n代表马匹数,下一行输出田忌每一匹马的数值,然后是王的马匹数值。田忌赢一局得200,输一局扣200,求田忌最多能赚多少。样例输入输出Sample Input392 83 7195 87 74220 2020 20220 1922 180Sample Outpu...原创 2018-11-17 10:18:51 · 492 阅读 · 0 评论 -
HDU 1009 FatMouse' Trade
原题目链接HDU1009分类HDU 贪心题意贪心专题一共有n个房子,每个房子里有老鼠喜欢吃的javabeans,但是每个房间里的javabeans的价格不一样。老鼠用m元,问m元最多可以卖多少javabeans,其中每个房间里的javabeans可以被分割。样例输入输出Sample Input5 37 24 35 220 325 1824 1515 10-1 ...原创 2018-11-17 10:19:30 · 387 阅读 · 0 评论 -
HDU 2553 N皇后问题
原题目链接HDU2553分类HDU 搜索 DFS 打表题意在N*N的方格棋盘放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成45角的斜线上。你的任务是,对于给定的N,求出有多少种合法的放置方法。样例输入输出Sample Input1850Sample Output19210想法DFS , 求N皇后有多...原创 2018-11-17 10:20:26 · 436 阅读 · 0 评论 -
剑指offer刷题报告(Java)
1. 二维数组中的查找题目:在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。// 解法一:220ms 暴力n^2public class Solution { public boolean Find(int target, int [][]...原创 2019-07-12 12:04:48 · 1305 阅读 · 0 评论