随笔分类 - 知识点讲解
摘要:如何证明辗转相除法(欧几里得算法) 欧几里得算法是数学中用来求解最大公约数的一种最普遍算法。在了解欧几里得算法的证明过程之前,建议大家先来了解一下求解GCD(最大公约数)的两种方式,博客链接在下: "求解GCD问题的两种方式" 于是我们知道了,所谓的 欧几里得算法 就是这么一个东西: $$ \for
阅读全文
摘要:详解矩阵乘法 本篇随笔详细讲解一下信息学奥林匹克竞赛中 矩阵乘法 的相关内容。矩阵和矩阵乘法的相关内容是数学中线性代数部分的内容,欢迎有兴趣的读者再自行涉猎一些纯粹的数学上的知识。本篇随笔只针对矩阵乘法在信息学和算法竞赛中的应用进行讲解。 矩阵加减法的概念 所谓矩阵其实就是一个数阵,我们可以把它看作
阅读全文
摘要:计数类问题中的取模运算总结 本篇随笔简单讲解一下信息学奥林匹克竞赛中 计数类问题中的取模运算 相关知识。算是一篇总结性质的博客,将会简单介绍在计数类问题进行答案统计的时候如何对算式进行合法的取模。 加法运算 如果是形如$(a+b)\,\,mod\,\,p$的式子,可以变成:$a\,\,mod\,\,
阅读全文
摘要:浅谈同余方程的求解与中国剩余定理 本篇随笔简单讲解一下信息学奥林匹克竞赛中数论部分的内容——同余方程的求解。顺便讲一下中国剩余定理。 同余方程的概念 关于同余和同余式的基本概念,如果还是了解的不清楚的话,请翻看本蒟蒻的这篇博客,讲解的非常详细: "浅谈欧拉定理和乘法逆元" 那么,同余方程就是同余式里
阅读全文
摘要:模板测试题 $powered\,\,by\,\,\color{red}{Seaway Fu}$ $NOTE:This\,\,examination\,\,is\,\,uesd\,\,to\,\,check\,\,whether\,\,the\,\,player's\,\,basic\,\,skill
阅读全文
摘要:浅谈欧拉定理 本篇随笔简单讲解一下信息学奥林匹克竞赛数论部分 欧拉定理 这一知识点。介绍的内容大致分为这么几个部分: “同余的基本概念、费马小定理、欧拉定理及其推论、乘法逆元” 。 同余的基本概念 同余的概念啊非常简单啦:如果两个整数$a,b$除以一个数$m$的余数相等的话,那么就叫做$a,b$在模
阅读全文
摘要:浅谈C++ STL string容器 本篇随笔简单讲解一下$C++STL$中$string$容器的使用方法及技巧。 string容器的概念 其实$string$并不是$STL$的一种容器,但是由于它的使用方法等等和$STL$容器很像,所以就把它当作$STL$容器一样介绍。 其实$string$容器就
阅读全文
摘要:详解字典树(Trie) 本篇随笔简单讲解一下信息学奥林匹克竞赛中的较为常用的数据结构——字典树。字典树也叫Trie树、前缀树。顾名思义,它是一种针对字符串进行维护的数据结构。并且,它的用途超级广泛。建议大家熟练掌握。 字典树的概念 字典树,顾名思义,是关于“字典”的一棵树。即:它是对于字典的一种存储
阅读全文
摘要:详解KMP算法 KMP算法(也叫做KMP模式匹配算法、模式匹配算法),是一种常用的字符串基本算法。其 用途 是: 在线性时间内判断A串是否为B的子串,并求出A串在B串中各自出现的位置 。 暴力求解字符串匹配 在我们还不知道这个世界上有KMP这种东西的时候,我们需要考虑如何暴力匹配两个字符串的包含和被
阅读全文
摘要:Manacher算法详解 版权声明:部分内容及图片参考自 "简书" 。 本篇随笔详解一下信息学奥林匹克竞赛中字符串问题的一种较为常用的算法——$Manacher$算法。也被戏称为“马拉车算法”。这种算法常被应用于求解 最长回文子串长度 的问题。对于字符串的基本处理及最长回文子串概念的相关知识,属于基
阅读全文
摘要:CSP S需备模板大全 谨以此文祝愿自己$CSP S\,\,2019\,\,\color{red}{RP++!!}$ 算法 二分 详见—— "二分写法详解" 数学 快速幂 详见—— "浅谈快速幂/快速乘" GCD 详见—— "求GCD的两种方式" LCM 详见—— "浅谈最大公约数、最小公倍数" 扩
阅读全文
摘要:浅谈组合数相关性质 本篇随笔简单讲解一下数学中组合数的相关性质。并且,因为博主是一名$OIer$~~(否则为啥要在高一学组合数)~~,所以在本篇随笔中还会侧重组合数在信息学奥林匹克竞赛中的应用。综上所述,本篇随笔乃是学数学的,学$OI$的,学玄学的,学哲学的同志们的学习佳选。~~(不要个脸)~~ 组
阅读全文
摘要:浅谈C++ STL list 容器 本篇随笔简单讲解一下$C++STL$中$list$容器的使用方法和使用技巧。 list容器的概念 学习过$C++STL$的很多同学都知道,$STL$(标准模板库)中的容器其实都是我们在算法竞赛中常用数据结构的一些模板。比如说$queue$模拟的队列,$priori
阅读全文
摘要:CSP2019复习指南 知识点(大纲)内容参考于本人博客: "近22年NOIP考点一览" 算法 基本算法: 模拟、暴力枚举 、排序、贪心、递归、递推、 贪心、二分、位运算 这些算法不再在此加以赘述,如有考前还不太懂的同学请尽快补习! 进阶算法 分治和归并排序 : "浅谈分治算法" "详解归并排序"
阅读全文
摘要:浅谈状态压缩DP 本篇随笔简单讲解一下信息学奥林匹克竞赛中的 状态压缩动态规划 相关知识点。在算法竞赛中,状压$DP$是非常常见的动规类型。不仅如此,不仅是状压$DP$,状压还是很多其他题目的处理技巧。所以掌握状压、掌握状压DP是十分重要的。 注:虽然自己写的也是状压DP的讲解。但还是凭良心推荐机房
阅读全文
摘要:史上最全的C++ STL 容器大礼包 为什么$C++$比$C$更受人欢迎呢?除了$C++$ 的编译令人感到更舒适,$C++$的标准模板库($STL$)也占了很重要的原因。当你还在用手手写快排、手写二叉堆,挑了半天挑不出毛病的时候,$C++$党一手$STL$轻松$AC$,想不嫉妒都难。 所以这篇随笔就
阅读全文
摘要:详解C++ STL map 容器 本篇随笔简单讲解一下$C++STL$中的$map$容器的使用方法和使用技巧。 map容器的概念 $map$的英语释义是“地图”,但$map$容器可和地图没什么关系。$map$是 “映射容器” ,其存储的两个变量构成了一个键值到元素的映射关系。 比如下图: 我们可以根
阅读全文
摘要:详解C++ STL priority_queue 容器 本篇随笔简单介绍一下$C++STL$中$priority_queue$容器的使用方法和常见的使用技巧。 priority_queue容器的概念 $priority_queue$在英文中是优先队列的意思。 队列是一种基本的数据结构。其实现的基本示
阅读全文
摘要:浅谈C++ STL stack 容器 本篇随笔简单介绍一下$C++STL$中$stack$容器的使用方法和常见的使用技巧。 stack容器的概念 $stack$在英文中是栈的意思。栈是一种基本的数据结构。而$C++STL$中的栈就是把这种数据结构模板化了。 栈的示意图如下:这是一个先进后出的数据结构
阅读全文
摘要:浅谈C++ STL queue 容器 本篇随笔简单介绍一下$C++STL$中$queue$容器的使用方法和常见的使用技巧。$queue$容器是$C++STL$的一种比较基本的容器。我们在学习这个容器的时候,不仅要学到这个容器具体的使用方法,更要从中体会$C++STL$的概念。 queue容器的概念
阅读全文