随笔分类 - 算法
摘要:# [4\. 寻找两个正序数组的中位数](https://leetcode.cn/problems/median-of-two-sorted-arrays/) 给定两个大小分别为 `m` 和 `n` 的正序(从小到大)数组 `nums1` 和 `nums2`。请你找出并返回这两个正序数组的 **中位
阅读全文
摘要:本质 在有序区间内,找到一个分界线,分界线左侧元素均不满足某一个性质,右侧则相反。 极端情况下,左边和右边都可能为空。 可以按照具体定义将分界线归属为左边或者右边。 比如,上面的分界线 0 左侧都不大于 0,右侧都大于 0。 先决条件 区间内元素有序; 区间左右端点确定。 题目特点 求某个最优解——
阅读全文
摘要:以下的内容来自 维基百科:模幂 从右到左的二位算法 第三种方法结合了第二种算法和平方求幂原理,使所需步骤大大减少,同时也与第二种方法一样减少了内存占用量。 首先把 表示成二进制,即: 此时 的长度为 位。对任意 ($0
阅读全文
摘要:问题来自 P1902 刺杀大使,在最初的实现中 DFS 中一段代码如下: visited[x2][y2] = true; flag = dfs(v, x2, y2); visited[x2][y2] = false; if (flag) { break; } 从格点([x2][y2]) 出发进行搜索
阅读全文
摘要:画出算法的演示图,展现算法对某个实例详细的执行过程,可以很清晰地把算法写下来。 注意以下的几点: 实例的规模应该尽可能小,便于人工分析算法的执行过程; 实例应该尽可能包含各种特殊情况,以确保跟着演示图编写的代码也会考虑到这些特殊情况; 演示图应当简单、简洁、清晰。 通过参考这篇快速排序的博客(排序算
阅读全文
摘要:使用如下代码来获取数字的每一位, while(n > 0) { digits[d++] = n % 10; n /= 10; } 需要注意一点,digits 数组中保存的位的顺序和字数本身的顺序相反。如数字 1234 会被保存为 |4|3|2|1|。
阅读全文
摘要:题目链接:https://www.luogu.com.cn/problem/P1980 术语 以下的英文术语均可以翻译为数字。 digit: 一个数字字符,十进制就是 0-9 之间的一个字符; numeral: 用来表示数字的符号化表示,如 “Three”、“3”、“III”; number: 一种
阅读全文
摘要:题目链接:https://www.luogu.com.cn/problem/P1014 有理数可枚举 In 1873 Cantor proved the rational numbers countable, i.e. they may be placed in one-one correspond
阅读全文
摘要:题目链接: https://www.luogu.com.cn/problem/P1008 置顶题解 暴力,加简化的判断,数学原理,2个集合内所有数相加相乘结果一样,2个集合的内容一样(没错我自己编得,灵感并不是我自己的,感谢帮我的大大) 置顶的题解中的数学原理应该是存在问题。我尝试证明的整体思路是不
阅读全文
摘要:题目地址:https://www.luogu.com.cn/problem/P1538 #include <iostream> int main() { /* * # Seven-segment Display * * The way how the program prints decimal n
阅读全文