码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • ACM数论总结3


            这一周的学习内容相对之前是要少一些的,因为有好几门课要结课了,所以一直在准备考试的内容,这周还是继续往下看的博客,基本上都是数论总结的一些例题:

    中国剩余定理的例题:

    [TJOI2009] 猜数字 - 洛谷,对于剩余定理,不停的取模取模,去寻找最优的值,核心的公式就是

    a[i]=(a[i]mod(b[i])+b[i])*mod(b[i])

    1. #include
    2. #include
    3. #include
    4. using namespace std;
    5. const int N = 12;
    6. #define int long long
    7. int a[N], b[N];
    8. int n, x, y;
    9. int ans, M = 1;
    10. int exgcd(int& x, int& y, int a, int b)
    11. {
    12. if (b == 0)
    13. {
    14. x = 1, y = 0;
    15. return a;
    16. }
    17. int d = exgcd(x, y, b, a % b);
    18. int temp = x;
    19. x = y, y = temp - a / b * y;
    20. return d;
    21. }
    22. int mul(int a, int b, int mod)
    23. {
    24. int ans = 0;
    25. while (b)
    26. {
    27. if (b & 1)
    28. ans = (ans + a) % mod;
    29. a = (a + a) % mod;
    30. b >>= 1;
    31. }
    32. return ans;
    33. }
    34. signed main()
    35. {
    36. scanf("%lld", &n);
    37. for (int i = 1; i <= n; i++)
    38. scanf("%lld", &a[i]);
    39. for (int i = 1; i <= n; i++)
    40. scanf("%lld", &b[i]), M *= b[i];
    41. for (int i = 1; i <= n; i++)
    42. {
    43. int m = M / b[i];
    44. x = 0, y = 0;
    45. exgcd(x, y, m, b[i]);
    46. x = (x % b[i] + b[i]) % b[i];
    47. ans = (ans + mul(mul(a[i], m, M), x, M)) % M;
    48. }
    49. printf("%lld\n", ans % M);
    50. }

    一个模板的题目所以标记一下,在这里,对于扩展中国剩余定理的博客之前的也都看了一部分,还有这一道在ACWing上的模板题,其实记得话我直接记得是扩展中国剩余定理即可,中国剩余定理必须有两两互质的条件;而扩展中国剩余定理没有限制,这就是两者的区别,总之都是在解决线性同余方程的问题而已。

    204. 表达整数的奇怪方式 - AcWing题库

             新增的内容就是了解了佩尔方程,以及在一些特定场所下的应用,即连分数法,部分矩阵表示,我理解起来也不是很困难,模板的话我读的比较好的就是这一篇,(我比赛就直接带进去),(13条消息) ACM常用模板-数论_Ogmx的博客-CSDN博客

     其中的这个傅里叶变换个人觉得还是比较有意思的,主要是之前没有见过,但数论的精髓都是一样的,就是先写出公式来再写代码,所以只要能理解公式,理解即使是复杂一些的代码也能明白。

            还有依旧把博客里看明白的例题敲了敲,发现了一个很好的方法就是在做核酸的时候和睡觉之前看一道博客上的题,睡一觉之后就有的题目突然就会了,一般也是分时段想这些例题,想不出来就看看题解,或者从网上再看一些别人做的题解。

    (13条消息) 永远不可能学会的数论之基础数论(例题)_熙言丶的博客-CSDN博客

            模板题目的话我就看的Acwing上的数论题目,也比较简单好理解,毕竟之前冲了钱不能浪费掉,这就是我这周大致所作的内容,总之基础的数论已经到了复习的阶段了,新的知识学习不是特别多,但复习的效果还是勉强达标的。 

  • 相关阅读:
    畅捷通T+ v17任意文件上传漏洞复现
    springMVC 拦截器和异常处理器
    mysql面试问题汇总
    【Linux集群教程】02 高可用集群
    『现学现忘』Docker基础 — 42、补充:save和load命令说明
    高级IO---多路转接模型的实现:select模型、poll模型、epoll模型
    Exception in thread “main“ java.io.NotSerializableException:
    通过PyTorch构建的LeNet-5网络对手写数字进行训练和识别
    再谈Android消息分发
    【pandas小技巧】--日期相关处理
  • 原文地址:https://blog.csdn.net/m0_64045085/article/details/127955140
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号