上一页 1 2 3 4 5 6 7 ··· 109 下一页

2020年6月20日

分析OS系统调用

摘要: 分析OS系统调用 一些基本概念 系统调用概念 系统库中为系统调用编写了许多接口函数(API),不同的API对应了不同的真正的(OS内核中)系统调用 从实模式到保护模式 x86系统在刚开机时处于实模式,即cs:ip的寻址方式为cs左移四位+ip,寻址能力只有20位,当bootsect.s和setup. 阅读全文

posted @ 2020-06-20 11:59 zsben 阅读(342) 评论(0) 推荐(0) 编辑

2020年6月17日

【思维】几何+map——leetcode直线上最多的点数

摘要: 好像以前在cf上碰到过类似的题,但是也思路上又不太一样。。 首先我们确定用map:mp来存每条直线的解析式ax+by+c=0 那么必然要两两枚举直线,然后判有多少个点在直线上:这样复杂度貌似是O(n^3)的,显然要优化一波 可以发现很多点其实不在直线上,那么我们要转换下统计的方式,改成一条直线一条直 阅读全文

posted @ 2020-06-17 21:41 zsben 阅读(171) 评论(0) 推荐(0) 编辑

【经典】bfs+建图+TSP状压dp——leetcode 寻宝

摘要: 这道题dp部分不难,就是建模和写起来麻烦。。 首先分析给定的地图,我们可以发现只有那些石堆,起点,终点,机关所在地是有用的(不超过100)个点的信息是有用的 再进行分析,可以以将起点终点机关当做点,石堆当做边来建图 然后我们就可以在无向图上进行dp 经典的tsp问题,dp[S][i]表示访问的点集状 阅读全文

posted @ 2020-06-17 19:50 zsben 阅读(317) 评论(0) 推荐(0) 编辑

二分+map+字符串hash/后缀自动机——leetcode 最长重复字串

摘要: 这题显然可以用后缀自动机的endpos集合来做,复杂度也应该是所有解法里最优秀的O(n) 但是写起来太麻烦了,用二分+字符串hash可以轻松过掉 ps:本题hash冲突比较严重,但是用自然溢出反而不会冲突。。另外用unordered_map比map要快很多 class Solution { publ 阅读全文

posted @ 2020-06-17 17:23 zsben 阅读(181) 评论(0) 推荐(0) 编辑

c++11 中的 lambda表达式

摘要: 最近做题老被lambda表达式折磨(c++的class内部sort函数里不让自定义cmp函数,只能丢一个匿名函数进去),索性把这块东西学一学 首先是c++11 的lambda: [函数对象参数] (操作符重载函数参数) mutable 或 exception 声明 -> 返回值类型 {函数体} 下面 阅读全文

posted @ 2020-06-17 15:22 zsben 阅读(176) 评论(0) 推荐(0) 编辑

【数学】【思维】数学+模拟+贪心——leetcode 寻找最近的回文数

摘要: 这题要真推算起来还是比较复杂的,但是可以先猜个结论: 首先肯定是前面一半复制到后面一半:这是很显然的,所以答案字符串由前面一半所控制 我们把前面一半+1,前面一半-1都考虑进去,如果没有进位退位(即字符串长度保持不变的情况下),那么这三个字符串足以覆盖答案出现的范围 下面再考虑进位和退位,显然进位的 阅读全文

posted @ 2020-06-17 14:40 zsben 阅读(189) 评论(0) 推荐(0) 编辑

【经典】单调队列+尺取法——leetcode 和至少为 K 的最短子数组

摘要: 老经典题了,不过如果不是这题我差点忘了单调队列的性质。。平时做的几乎都是单调栈 这题和区间的和相关,那么首先弄一个前缀和出来(记得偏移一位,在前面补上个0),然后再遍历这个前缀和数组 遍历过程中维护一个单调队列deque 维护单调性:第i个元素进队时弹出后面所有不小于它的 尺取更新答案:完成上面一步 阅读全文

posted @ 2020-06-17 10:48 zsben 阅读(163) 评论(0) 推荐(0) 编辑

2020年6月16日

【思维】快慢指针——LEETCODE环形链表 II

摘要: 给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null 经典快慢指针,首先用快慢指针s,f从head开始扫描,设两个指针在一段时间t后相遇 此时慢指针走了t步,设t=a+b,其中a是环外的,b是环内部分 此时快指针走了2t步,同时快指针一定在环上绕了k圈,设环长度为c,有等式2 阅读全文

posted @ 2020-06-16 23:53 zsben 阅读(239) 评论(0) 推荐(0) 编辑

【经典】矩阵快速幂加速dp递推——namomo #1 c

摘要: 有幸打上了wls的举办的第一场比赛 知道一定是矩阵快速幂加速dp,但是递推公式一下子有点难弄 看了题解后才发现可以将这些六边形平放,平放之后很容易发现从第i个到第i+1的关键点是1,2: 因为第i+1个六边形所有点的所有方向的状态,都是由第i个六边形1或2的方向推出的 所以我们只要dp第i个六边形点 阅读全文

posted @ 2020-06-16 21:43 zsben 阅读(404) 评论(0) 推荐(0) 编辑

2020年6月15日

【思维】dfs树/求最小环——cf 1364D

摘要: 这题的强化版 1325F 题目里很友好的给了一个结论:对于任何一张n个点的无向图,任何一个k<=n,图中要么有大小不超过k的环,要么有大小为ceil(k/2)的独立集 证明很简单: 我们先定义单元环:环上的点的度数都为2 对于任意一个单元环,其大小如果超过k,那么必有>=ceil(k/2)的独立集 阅读全文

posted @ 2020-06-15 22:11 zsben 阅读(188) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 7 ··· 109 下一页

导航