一周学习总结

这一周主要完成了数学一本通数论和组合数学两部分的学习。学习的内容很多,也很复杂,还需仔细整理复习。

数论部分学习了整除,了解了整除的概念和性质,以及同余的概念和性质,要特别注意同余模公式,乘积的模等于分别取模的乘积再取模。通过例题学习了快速幂和利用同余结论筛素数等知识,学习了利用辗转相除法求最大公约数和对应二进制算法的优化,理解了这个求解过程。重点学习了扩展欧几里得算法,学会了利用它来求解方程和线性同余方程的方法,注意求一个解和最小整数解。学习了求逆元的三种方法,扩展欧几里得,快速幂,递归。其中,快速幂法最为常用,注意互质这一条件。逆元最主要的应用是把除法取模转化为乘法取模,在例题中学习了A^B的约数和的方法,学习了整数的唯一分解定理和约数和公式以及递归二分法求等比数列的和。之后学习了中国剩余定理,了解了它的计算过程,学会用它求解模线性方程组的解,之后学习了斐波那契数列,重点看了一下它的通项推导过程,记住了它的通项公式,以及推广到普通递归关系下的通项公式。卡特兰数主要记住了它的几个公式,并了解了它的几种常见应用,除包括课本上列举的之外,还包括求进出栈的次序等,注意卡特兰数的前几项,便于判断。素数大一上学期就接触过,现在更深层次的学习了这一知识,在原来学习的筛法的基础上,学习了线性筛法,注意第二个关键处的终止,还学习了素数的相关定理,注意费马定理,费马小定理,由此推出求逆元的结论,a^p-2,之后学习了素数测试的方法和过程,这一节的那个例题直接用费马定理判断,误差很大,最好加上二次探测法优化,再往后学习了欧拉函数及其相关的引理,学习了用pollard rho算法求大数因子的方法和过程,通过例题又学习了快速积和随机数的生成等小知识点,课本上给出的那个分解的代码有点复杂,学长给了个简单一些的,我还要仔细研究一下那个模板。BSGS算法的计算过程和应用有点我基本了解,就是hash表的使用有点懵,因此这部分的例题没怎么看懂,最后学习了欧拉函数的线性筛法,在以后也常用到。

组合数学前面部分还比较容易理解,越往后越复杂。一开始学习了计数原理,注意抽屉原理和容斥原理,有些题目的思路会用到,取数问题和roundnumber那两个题都没怎么看懂,盒子与球问题有好几种情况,我简单看了一下,了解了它们的区别和计算方法。稳定婚姻问题当故事看了一下,了解它的过程,通过例题了解了一下galeshapley算法,组合问题的分类也是简单了解了一下,知道有哪些问题。随后学习了排列,包括全排列(不全相异),选排列,错位排列,圆排列,学习了选排列全排列的生成方法,了解了一下next——permutation函数,学习了组合的公式与计算,通过例题学习了约分的思想,后面有几个例题不是很懂,母函数感觉很难理解,学习了普通型母函数和指数型母函数,学习了相关定理和构造方法,注意什么时候用什么类型的母函数,k阶求和序列没看懂。莫比乌斯反演更难理解,我学习了它的定义,性质,求莫比乌斯函数的方法,注意另一种n|d的形式,第一个例题用欧拉公式求解,再后面的例题不是很理解。最后学习了卢卡斯定理的应用和计算方法,注意求逆元的方法和打表阶乘。还额外了解了一下前缀和和差分来优化代码。

两次比赛一共只A了3题(有点惭愧),总结原因,有知识上的薄弱和做题方法上的问题,前面很多知识,都忘得差不多了(之前学的也不是很好),要注意慢慢弥补,先定个小目标,把贪心算法复习一下,比赛里有很多题目用到了贪心的思想,我能想到,但老是写不好,以后做题注意细节,特别数据范围,注意优化代码,日常训练时注意限时和自主,摆脱对题解的依赖,继续加油

 这一周的强度真的不小,学的东西也很复杂,需要慢慢消化,不过确实有收获,至少学习知识更有耐心了,相信自己,迎接新的挑战。

猜你喜欢

转载自blog.csdn.net/sdauguanweihong/article/details/81427881