![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
hihocoder
Marcus-Bao
这个作者很懒,什么都没留下…
展开
-
hihocoder #1044 状态压缩dp
描述小Hi和小Ho在兑换到了喜欢的奖品之后,便继续起了他们的美国之行,思来想去,他们决定乘坐火车前往下一座城市——那座城市即将举行美食节!但是不幸的是,小Hi和小Ho并没有能够买到很好的火车票——他们只能够乘坐最为破旧的火车进行他们的旅程。不仅如此,因为美食节的吸引,许多人纷纷踏上了和小Hi小Ho一样的旅程,于是有相当多的人遭遇到了和小Hi小Ho一样的情况——这导致这辆车上的人非常非常原创 2017-02-20 10:48:06 · 686 阅读 · 0 评论 -
hihocoder 1509 异或排序 二进制思维
题目链接题意:给定一个长度为 n 的非负整数序列 a[1..n],你需要求有多少个非负整数 S 满足以下两个条件:(1).0 ≤ S 60(2).对于所有 1 ≤ i n ,有 (a[i] xor S) ≤ (a[i+1] xor S)思路:这个题目不是很难想,因为我们一看到异或啊啥的跟二进制有关系的东西,都会去想它的每一原创 2017-07-11 18:39:18 · 934 阅读 · 0 评论 -
hihocoder 1523 数组重排2 思维
题目链接题目链接原创 2017-07-11 18:27:40 · 782 阅读 · 0 评论 -
HihoCoder - 1526 Sequence Value 思维+二进制dp
题目链接题意:给定一个长度为 n 的序列 a[1..n],定义函数 f(b[1..m]) 的值为在 [0,m-1] 内满足如下条件的 i 的数目:b 中前 i 个数异或起来的值小于 b 中前 i +1个数异或起来的值。对于 a[1..n] 的每个子序列 b[1..m],求f(b[1..m])之和。思路:这又是一个二进制原创 2017-07-10 23:51:17 · 570 阅读 · 0 评论 -
微软编程之美 Qual_B:长方形 思维
题目链接题意:在 N 条水平线与 M 条竖直线构成的网格中,放 K 枚石子,每个石子都只能放在网格的交叉点上。问在最优的摆放方式下,最多能找到多少四边平行于坐标轴的长方形,它的四个角上都恰好放着一枚石子。思路:这个题想了好多,还是没想明白。这就比较菜了... 这个题的话,先考虑什么情况下会使得得到的长方形最多.肯定是将其尽可能原创 2017-07-13 22:59:59 · 361 阅读 · 0 评论 -
HihoCoder - 1318 Invalid Binary Numbers 思维+dp
题目链接题意:如果一个二进制数包含连续的两个1,我们就称这个二进制数是非法的。小Hi想知道在所有 n 位二进制数(一共有2n个)中,非法二进制数有多少个。例如对于 n = 3,有 011, 110, 111 三个非法二进制数。由于结果可能很大,你只需要输出模109+7的余数。思路:首先介绍一下官方的题解,缺啥补啥的思想比较6.何为缺啥原创 2017-07-09 23:49:22 · 422 阅读 · 0 评论 -
hihoCoder挑战赛12 ABC
题目链接A 顺子,直接模拟就可以了,注意判断花色,总共可能的概率也就那么几种情况,再就是注意A 2 3 4 5 不是顺子,只有 10 J Q K A 是.还要判断是否拿一张牌能构成顺子,(包括有自己一样的,和差大于等于2的).还有就是特别注意取中间的,当四张牌是连起来的时候,特别注意包含2或A的只能去一边,无法取两边.暴力写的很丑....#inclu原创 2017-07-24 20:52:06 · 374 阅读 · 0 评论 -
HihoCoder - 1527 Fast Multiplication 二幂拆分问题
题目链接题意:在写代码时,我们经常要用到类似 x × a 这样的语句( a 是常数)。众所周知,计算机进行乘法运算是非常慢的,所以我们需要用一些加法、减法和左移的组合来实现乘一个常数这个操作。具体来讲, 我们要把 x × a 替换成:(xa0) op1 (xa1) op2 (xa2) ... opn (xan) 这样的形式,其中opi 是+或者-。举原创 2017-07-11 00:10:57 · 683 阅读 · 0 评论 -
HihoCoder - 1403 最长可重叠子串问题 二分+暴力
题目链接题意:小Hi想知道一段旋律中出现次数至少为K次的旋律最长是多少? 思路:这个题目应该是后缀数组的几个经典之一.首先要求重叠的最长,那么我们可以知道我们对所有的后缀排个序的话,字典序越接近的他的前缀越长,这是很显然的.也就是我们的height数组.接着我们就可以想到求n个后缀的最长公共前缀: ①首先将N个字符串按照字典原创 2017-07-29 11:55:55 · 653 阅读 · 0 评论 -
hihocoder 1326 dp OR 思维+枚举
题目链接描述对于一个01字符串,你每次可以将一个0修改成1,或者将一个1修改成0。那么,你最少需要修改多少次才能把一个01串 S 变为有序01字符串(有序01字符串是指满足所有0在所有1之前的01串)呢?思路:一种巧妙的做法就是,因为01有序,考虑从哪一位开始,前面的全是0,后面的全是1.那么就需要预处理出所有的前面原创 2017-08-24 23:43:15 · 705 阅读 · 0 评论 -
hihocoder 1323 回文字符串 区间dp OR 记忆化搜索
题目链接描述给定一个字符串 S ,最少需要几次增删改操作可以把 S 变成一个回文字符串?一次操作可以在任意位置插入一个字符,或者删除任意一个字符,或者把任意一个字符修改成任意其他字符。思路:考虑记忆化搜索,dp[l][r] 表示从l开始到r结束的字符串构成回文串需要的最少操作次数,1. 那么如果s[l] == s[原创 2017-08-27 13:12:59 · 720 阅读 · 0 评论 -
HihoCoder - 1582 Territorial Dispute 思维+凸包
点击打开链接题意:题意好难懂....在二维平面上给你n(思路:首先我们知道N如果三点贡献我们就让中间的点为一个颜色,其余的两个一个颜色就可以了.对于其余的情况要想不能使A B在不同侧就要无论怎么划线两边都有才可以.这种情况下我们可以求一个凸包,凸包上的点全部一个颜色,凸包内的点另一个颜色,这样就使得无论怎么划线都把凸包分为两部分,永远满足题意.但是要原创 2017-09-25 00:33:09 · 416 阅读 · 0 评论 -
hihocoder 1513 小Hi的烦恼 五维数点求集合的交集 bitset用法
题目链接官方题解:小Hi:今天我们来解决“五维数点”问题。小Ho:什么是“五维数点”问题呢?小Hi:抽象来说,我们现在有n个在五维空间中的点(X_i,Y_i,Z_i,Q_i,W_i)。现在对于每个点,我们需要知道所有坐标均比它小的点的数量。小Ho:这个问题看起来似曾相似,如果是在二维空间中似乎是一个经典的运用线段树解决的题目。小Hi:对。但是现在是在原创 2017-05-01 19:19:17 · 1091 阅读 · 0 评论 -
hihoCoder 1584 Bounce 【数学规律】 (ACM-ICPC国际大学生程序设计竞赛北京赛区(2017)网络赛)
来源#1584 : Bounce时间限制:1000ms单点时限:1000ms内存限制:256MB描述For Argo, it is very interesting watching a circle bouncing in a rectangle.As shown in the figure below, the转载 2017-10-06 18:04:32 · 423 阅读 · 0 评论 -
CodeForces - 13C/CodeForces - 713C/HihoCoder - 1529 Sequence dp
题目链接凯大佬的博客题意:给定一个长度为 n 的非负整数序列 a[1..n]。你每次可以花费 1 的代价给某个 a[i] 加1或者减1。求最少需要多少代价能将这个序列变成一个不上升序列(有的题目是非递减的,或者严格递减的等等)。这三个题目都是类似的,只是问法不一样,严格问题的凯爷的博客说的已经很明确了.对于hiho上那个题,因为数据量太大(n^2)是原创 2017-07-11 00:02:00 · 833 阅读 · 0 评论 -
HihoCoder - 1309 Task Distribution 思维
题目链接ti'yi原创 2017-07-10 23:38:47 · 351 阅读 · 0 评论 -
hihocoder #1270 建造基地 完全背包
描述在遥远的未来,小Hi成为了地球联邦外空间联合开发工作组的一员,前往一颗新发现的星球开发当地的重金属资源。为了能够在当地生存下来,小Hi首先要建立一个基地。建立基地的材料可以直接使用当地的石材和富裕的重金属资源。基地建设分为N级,每一级都需要达成K的建设值后才能够完成建设,当前级别的建设值溢出后不会影响到下一级的建设。小Hi可以产出的重金属资源按照精炼程度分为M级,根据开采的数量原创 2017-02-15 22:55:41 · 464 阅读 · 0 评论 -
hihocoder #1043 完全背包
描述且说之前的故事里,小Hi和小Ho费劲心思终于拿到了茫茫多的奖券!而现在,终于到了小Ho领取奖励的时刻了!等等,这段故事为何似曾相识?这就要从平行宇宙理论说起了………总而言之,在另一个宇宙中,小Ho面临的问题发生了细微的变化!小Ho现在手上有M张奖券,而奖品区有N种奖品,分别标号为1到N,其中第i种奖品需要need(i)张奖券进行兑换,并且可以兑换无数次,为了使得辛苦得到的奖券不白白原创 2017-02-15 21:34:38 · 446 阅读 · 0 评论 -
hihocoder 136 #1269 优化延迟 二分+优先队列
描述小Ho编写了一个处理数据包的程序。程序的输入是一个包含N个数据包的序列。每个数据包根据其重要程度不同,具有不同的"延迟惩罚值"。序列中的第i个数据包的"延迟惩罚值"是Pi。如果N个数据包按照i1, Pi2, ... PiN>的顺序被处理,那么总延迟惩罚SP=1*Pi1+2*Pi2+3*Pi3+...+N*PiN(其中i1, i2, ... iN是1, 2, 3, ... N的一原创 2017-02-06 21:10:53 · 452 阅读 · 0 评论 -
hihocoder #1038 01背包 一维数组实现
且说上一周的故事里,小Hi和小Ho费劲心思终于拿到了茫茫多的奖券!而现在,终于到了小Ho领取奖励的时刻了!小Ho现在手上有M张奖券,而奖品区有N件奖品,分别标号为1到N,其中第i件奖品需要need(i)张奖券进行兑换,同时也只能兑换一次,为了使得辛苦得到的奖券不白白浪费,小Ho给每件奖品都评了分,其中第i件奖品的评分值为value(i),表示他对这件奖品的喜好值。现在他想知道,凭借他手上的原创 2017-02-01 20:33:41 · 474 阅读 · 0 评论 -
hihocoder 1268 九宫 dfs
时间限制:10000ms单点时限:1000ms内存限制:256MB描述小Hi最近在教邻居家的小朋友小学奥数,而最近正好讲述到了三阶幻方这个部分,三阶幻方指的是将1~9不重复的填入一个3*3的矩阵当中,使得每一行、每一列和每一条对角线的和都是相同的。三阶幻方又被称作九宫格,在小学奥数里有一句非常有名的口诀:“二四为肩,六八为足,左三右七,戴九履一,五居其中原创 2017-02-01 20:29:21 · 819 阅读 · 0 评论 -
hihocoder #1273 清理海报 建图思想+dfs+状态压缩记录 好题!
描述小Hi实验室所在的建筑一楼有一个用于贴海报的黑板,不停的有新的海报往上贴,也会安排人员不断的对海报进行清理,而最近,轮到了小Hi去对海报进行清理。黑板是一块W*H大小的区域,如果以左下角为直角坐标系的话,在上次清理后第i张贴上去的海报可以视作左下角为(X1i, Y1i),右上角为(X2i, Y2i)的一个矩形。撕去一张海报会导致所有覆盖在其上的海报都被同时撕掉(这样被称为连带,原创 2017-03-06 12:26:40 · 687 阅读 · 0 评论 -
hihocoder #1272 : 买零食
描述小Ho很喜欢在课间去小卖部买零食。然而不幸的是,这个学期他又有在一教的课,而一教的小卖部姐姐以冷若冰霜著称。第一次去一教小卖部买零食的时候,小Ho由于不懂事买了好一大堆东西,被小卖部姐姐给了一个“冷若冰霜”的眼神,食欲都下降了很多。从那以后,小Ho就学乖了,去小卖部买东西只敢同时买3包以内的零食,并且价格加起来必须是5的整数倍,方便小卖部姐姐算价格。但是小Ho不擅长计算,所以他把小原创 2017-02-27 18:04:40 · 669 阅读 · 0 评论 -
hihocoder #1482 : 出勤记录II dp
描述小Hi的算法课老师每次上课都会统计小Hi的出勤记录。迟到会被记录一个L,缺席会被记录一个A,按时上课会被记录一个O。一学期结束,小Hi的出勤记录可以看成是一个只包含LAO的字符串,例如"OOOOLOOOLALLO……"。如果小Hi整学期缺席不超过1次,并且没有连续3次迟到,小Hi的出勤记录就算合格。 现在给出字符串的长度N,小Hi想知道长度为N的出勤记录中,合格的记原创 2017-03-23 00:00:16 · 726 阅读 · 0 评论 -
hihocoder 1274 自行车架 多维dp
描述小Hi的宿舍楼下有一块用于停自行车的区域。平时自行车都停得非常杂乱,于是楼长打算去买一排自行车架用来停车。自行车架一般有P个槽,每个槽的两侧都可以停入自行车;但是一个槽位同时只能有一侧停入自行车。此外,停入一辆自行车会导致无法在这一侧的附近若干个槽位中停入自行车。经过调查,这栋宿舍楼的学生共拥有N辆A型自行车、M辆B型自行车和K辆C型自行车。其中A型自行车会导致这一侧的左右各1个槽位不转载 2017-03-13 22:55:09 · 895 阅读 · 0 评论 -
hihocoder 1285 智力竞赛 dp 类多重背包问题
题目连接 思路:这个题算是一个类多重背包的问题吧,dp[i][j],表示第i关时回答了j道题至少答对了几道题目;那么对于每一关的积分a[i]我们可以求出所要答对问题的最大值,然后在m道题的范围内枚举答对的次数,用答错题x来补剩余的分数,然后维护这个最小值.#include#define Ri(a) scanf("%d", &a)#define Rl(a) scanf("%lld原创 2017-04-17 20:24:39 · 606 阅读 · 0 评论 -
hihocoder 1142 三分法求极值
题目链接 思路:直接一个裸的三分,第一次接触三分 就此机会学习一下,三分的复杂度也是log级别的.在之前的几周中我们了解到二分法作为分治中最常见的方法,适用于单调函数,逼近求解某点的值。但当函数是凸形函数时,二分法就无法适用,这时就需要用到三分法。从三分法的名字中我们可以猜到,三分法是对于需要逼近的区间做三等分:我们发现lm这个点比rm要低,那么我们要原创 2017-04-22 22:35:11 · 713 阅读 · 0 评论 -
hihocoder 1290 Demo Day 二维图的dp
题目链接题意:大致的题意就是说给你n*m的图,要你从(1,1)到(n,m).图中.表示可以走,b表示障碍,你每次只能先往右走,遇到障碍以后才能往下走,直到走到(n,m) 但是你可以将.变为b,将b变为. 问你至少需要几步变换才能走到(n,m)思路:dp[i][j][k] 表示i,j表示位置,k表示方向,0表示当前位置朝右,1表示当前位置朝下.有一点需要注意的就是如果当前点是b则原创 2017-05-15 21:38:57 · 360 阅读 · 0 评论 -
hihocoder 1305 区间求差 经典思维+技巧
题目链接题意: 给你两个区间的集合,A和B,让你求A-B的差的和为多大.思路:以下来自hihocoder讨论区大神的分析:《区间求差》题目分析这道题是一类区间问题的变体,我们先来看一道最基础的区间问题:给定N个区间[S1, E1], [S2, E2], ... [SN, EN],求这些区间并集的长度。这道题通常的解法是,我们把这N个区间的原创 2017-06-04 16:57:24 · 505 阅读 · 0 评论 -
hihocoder 1580 Matrix dp+RMQ (带修改的最大子阵和)
传送门 题意:给你一个n*m的矩阵,现在要求你必须修改矩阵的某一个值,问你能得到的最大子矩阵和是多少? 是这个题目的变形 思路:这个题目是在原有的最大子矩阵和的基础上的变形.首先预处理每一列的和,然后枚举两行,复杂度变成O(N3)O(N^3) 转变成最大子段和(老生常谈)现在我们来说说怎么修改? 我们为了使和最大,修改时肯定修改的是某一列的最小的那一个,这样才能使得和达到最大. 每次原创 2017-10-05 23:02:36 · 310 阅读 · 0 评论