随笔分类 -  ACM基础篇

上一页 1 2 3 4 5 6 7 8 9 ··· 17 下一页
摘要:百练2757: 题目描述: 对于给定的序列,求出最长上升子序列的长度。 题目链接:http://bailian.openjudge.cn/practice/2757 解题思路 一、动态规划 1. 找子问题 错误找法: “求序列的前n个元素的最长上升子序列的长度”是个子问题,但这样分解子问题,不具有“ 阅读全文
posted @ 2018-05-07 21:53 _努力努力再努力x 阅读(421) 评论(0) 推荐(0)
摘要:题目链接: https://cn.vjudge.net/problem/POJ-3111 题目大意: 卖宝救夫:Demy要卖珠宝,n件分别价值vi 重 wi,她希望保留k件使得 最大。 解题思路: 阅读全文
posted @ 2018-05-04 10:47 _努力努力再努力x 阅读(211) 评论(0) 推荐(0)
摘要:题目链接: https://vjudge.net/problem/POJ-2456 题目大意: 有n个牛栏,选m个放进牛,相当于一条线段上有 n 个点,选取 m 个点, 使得相邻点之间的最小距离值最大 解题思路: 二分枚举最小距离的最大值 阅读全文
posted @ 2018-04-29 16:55 _努力努力再努力x 阅读(262) 评论(0) 推荐(0)
摘要:【模板+讲解】二分答案 !阅读须知||阅读本博文前笔者认为读者已经学会(或了解)了: 1.基础语言与算法 2.标准二分法(二分思想) 3.二分查找 定义 二分答案与二分查找类似,即对有着单调性的答案进行二分,大多数情况下用于求解满足某种条件下的最大(小)值。 答案单调性 答案的单调性大多数情况下可以 阅读全文
posted @ 2018-04-29 16:53 _努力努力再努力x 阅读(272) 评论(0) 推荐(0)
摘要:题目链接: https://vjudge.net/problem/POJ-1064 题目大意: 有N条绳子,长度分别是Li,如果从中切割出k条长度相同的绳子,最长多少 解题思路: 二分答案,判断当前解是否可行,由于是浮点数,可以考虑循环100次求值 阅读全文
posted @ 2018-04-29 16:28 _努力努力再努力x 阅读(125) 评论(0) 推荐(0)
摘要:题目链接: https://vjudge.net/problem/SPOJ-ORDERS 题目大意: 根据每个数字的逆序对求出原数组 解题思路: 举个例子: n = 5 a[ n ] = { 0, 1, 2, 0, 1 }; 对于第5个士兵,s[ 5 ] = { 1, 2, 3, 4, 5 }; 而 阅读全文
posted @ 2018-04-27 21:28 _努力努力再努力x 阅读(164) 评论(0) 推荐(0)
摘要:题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2688 题目大意: 给你n数,(n<=3e6),有两个操作,Q为 当前有多少对数,满足严格递增,R l,r为旋转l,r这个区间的数 解题思路: 求严格递增的顺序对我们可以反向用树状数组求逆序对,300W 阅读全文
posted @ 2018-04-27 21:23 _努力努力再努力x 阅读(149) 评论(0) 推荐(0)
摘要:题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1394 题目大意: 一个由0..n-1组成的序列,每次可以把队首的元素移到队尾, 求形成的n个序列中最小逆序对数目 解题思路: 如果求出第一种情况的逆序列,其他的可以通过递推来搞出来,一开始是t[1], 阅读全文
posted @ 2018-04-27 21:21 _努力努力再努力x 阅读(130) 评论(0) 推荐(0)
摘要:题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2838 题目大意: 就是求将之前的排列变成一个递增的排列,每交换两个数的代价为两个数的和,求变成递增的排列所需的最小代价为多少。 其实就是求出逆序对的花费(每对逆序对的花费是这个逆序对的和) 解题思路: 阅读全文
posted @ 2018-04-26 22:22 _努力努力再努力x 阅读(131) 评论(0) 推荐(0)
摘要:题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3584 题目大意: 给定一个N*N*N多维数据集A,其元素是0或是1。A[i,j,k]表示集合中第 i 行,第 j 列与第 k 层的值。 首先由A[i,j,k] = 0(1 <= i,j,k <= N) 阅读全文
posted @ 2018-04-26 22:00 _努力努力再努力x 阅读(176) 评论(0) 推荐(0)
摘要:题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2642 题目大意: B x y:将星星x y点亮 D x y:将星星x y熄灭 Q x1 x2 y1 y2:询问该区域内有多少亮的星 解题思路: 二维树状数组模拟即可 注意: 1、下标+1 2、同一位置 阅读全文
posted @ 2018-04-26 21:51 _努力努力再努力x 阅读(161) 评论(0) 推荐(0)
摘要:题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1892 题目大意: 题目大意:有很多方格,每个方格对应的坐标为(I,J),刚开始时每个格子里有1本书,然后让你统计一片区域有多少本书,还可以增加书和减少,移动书。 解题思路: 直接二维数组数组模拟 注意 阅读全文
posted @ 2018-04-26 21:24 _努力努力再努力x 阅读(127) 评论(0) 推荐(0)
摘要:题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2852 题目大意: 题意: 给出三种操作, 0 在容器中插入一个数。 1 在容器中删除一个数。 2 求出容器中大于a的第k大元素。 解题思路: 用树状数组维护每个值,插入数字是add(x, 1),删除时 阅读全文
posted @ 2018-04-26 21:17 _努力努力再努力x 阅读(138) 评论(0) 推荐(0)
摘要:题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3015 题目大意: 有一些树,这些树的高度和位置给出。现在高度和位置都按从小到大排序,对应一个新的rank,任意两棵树的值为min(高度的rank) * abs(位置差的绝对值)。问所有任意两棵树的值的 阅读全文
posted @ 2018-04-26 21:13 _努力努力再努力x 阅读(120) 评论(0) 推荐(0)
摘要:题目链接: https://vjudge.net/problem/POJ-1990 题目大意: 一群牛参加完牛的节日后都有了不同程度的耳聋,第i头牛听见别人的讲话,别人的音量必须大于v[i],当两头牛i,j交流的时候,交流的最小声音为max{v[i],v[j]}*他们之间的距离。现在有n头牛,求他们 阅读全文
posted @ 2018-04-26 21:09 _努力努力再努力x 阅读(368) 评论(0) 推荐(0)
摘要:题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1251 题目大意: Ignatius最近遇到一个难题,老师交给他很多单词(只有小写字母组成,不会有重复的单词出现),现在老师要他统计出以某个字符串为前缀的单词数量(单词本身也是自己的前缀). 解题思路: 阅读全文
posted @ 2018-04-26 11:55 _努力努力再努力x 阅读(145) 评论(0) 推荐(0)
摘要:题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1247 题目大意: 给出一些单词,以EOF结束,看其中哪一个单词可以由其他两个单词组成,将其输出 解题思路: 将所有单词存入字典树中,每个单词拆成两部分查询是不是字典树中的单词。 此处是查询是不是单词, 阅读全文
posted @ 2018-04-26 11:52 _努力努力再努力x 阅读(122) 评论(0) 推荐(0)
摘要:原理详见:https://www.cnblogs.com/TheRoadToTheGold/p/6290732.html 模板一: 输入字符串,查询是不是单词或者前缀 查询单词的时候,在插入时在最后一个节点的地方标记为单词,查询时返回最后节点是不是单词标记 统计前缀出现的次数: 由于字典树中字母是边 阅读全文
posted @ 2018-04-26 11:46 _努力努力再努力x 阅读(257) 评论(0) 推荐(0)
摘要:题目链接: https://vjudge.net/problem/POJ-2503 题目大意: 就像查找一本字典,根据输入的条目和要查询的单词,给出查询结果(每个单词长度不超过10) 解题思路: map容器可以直接过,不过为了练习hash,写了个hash也可以过 阅读全文
posted @ 2018-04-26 10:02 _努力努力再努力x 阅读(185) 评论(0) 推荐(0)
摘要:const int mod = 9973;//一般为靠近总数的素数 struct Hashtable { int x;//hash存的值 Hashtable * next; Hashtable() { next = 0; } }; Hashtable * Hash[mod]; void Hash_Insert(int x)//存x { ... 阅读全文
posted @ 2018-04-26 09:24 _努力努力再努力x 阅读(155) 评论(0) 推荐(0)

上一页 1 2 3 4 5 6 7 8 9 ··· 17 下一页