当前位置: 首页 > news >正文

保研考研机试攻略:第三章——数学(3)

🍦🍦🍦今天我们继续来看数学的最后一部分,感谢大家对该专栏的支持,我会继续努力学习更新的,期待大家与我共同进步,我们一起拿捏机试~~~

目录

🧊🧊🧊3.8 二分快速幂

🥥例题:DreamJudge 1017

🧊🧊🧊3.9 常见数学公式总结

错排公式

海伦公式

组合数公式

两点之间的距离公式

扇形面积

卡特兰数

🧊🧊🧊3.10 规律神奇OEIS

🥥例题:DreamJudge 1479


🧊🧊🧊3.8 二分快速幂

有一类题目是这样的:求 (x^y) % p

当 y 很大的时候,我们不能直接用for循环一个一个乘,因为这样的方法复杂度是 O(N)。

遇到这类问题的时候,我们可以使用二分快速幂的方法来求解。

举个例子:3^7 = 3^4 * 3^2 *3^1

首先我们要知道,对于任意一个数 s,它的二进制代表了它可以由 2 的次幂的累加和来表示。

比如 7 的二进制是 111,那么它就是说 7 = 2^2 + 2^1 + 2^0 ;再比如一个数 12 的二进制是 1101 13 = 2^3 + 2^2 + 2^0

所以对于任意一个 x^y,我们都可以将 y 分解成 2 的幂次的形式,例如 5^13 = 5^8 * 5^4 * 5^1

这样做的好处是:1..2..4..8..16..32..64..128........1024.....

1、每一个数都是它前一个数的 2 倍

2、它的迭代速度超级快

🥥例题:DreamJudge 1017

运用上面讲的二分快速幂和同余模定理即可。

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
ll mod_pow(ll x, ll y, ll mod) {ll res = 1;while (y > 0) {//如果二进制最低位为 1、则乘上 x^(2^i)if (y & 1) res = res * x % mod;x = x * x % mod; // 将 x 平方y >>= 1;}return res;
}
int main() {ll x, n;//注意 x*x 会超出 int 范围scanf("%lld%lld", &x, &n);printf("%lld\n", mod_pow(x, n, 233333));return 0;
}

🧊🧊🧊3.9 常见数学公式总结

错排公式

问题: 十本不同的书放在书架上。现重新摆放,使每本书都不在原来放的位置。有几种摆法?

递推公式为:D(n) = (n - 1) * [D(n - 1) + D(n - 2)]

海伦公式

S = sqrt(p * (p - a) * (p - b) * (p - c))

公式描述:公式中 a,b,c 分别为三角形三边长,p 为半周长,S 为三角形的面积。

组合数公式

公式描述:

组合数公式是指从 n 个不同元素中,任取 m(m≤n)个元素并成一组,叫做从 n 个不同元素中取出 m 个元素的一个组合。

两点之间的距离公式

公式描述:公式中(x1,y1),(x2,y2)分别为 A、B 两个点的坐标。

扇形面积

S=1/2×弧长×半径,S 扇=(n/360)πR²

卡特兰数

原理

令 h(0)=1,h(1)=1,catalan 数满足递归式:

(其中 n>=2)

另类递推公式:

该递推关系的解为:

(n=1,2,3,...)

卡特兰数的应用实质上都是递归等式的应用

前几项为:1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900,2674440, 9694845, 35357670, 129644790, 477638700, 1767263190, 6564120420, 24466267020, 91482563640, 343059613650, 1289904147324, 4861946401452, ...

所有的奇卡塔兰数 Cn 都满足 n = 2^k-1、所有其他的卡塔兰数都是偶数

应用

  1. 12 个高矮不同的人,排成两排,每排必须是从矮到高排列,而且第二排比对应的第一排的人高,问排列方式有多少种?
  2. 括号化问题。矩阵链乘: P=A1×A2×A3×……×An,依据乘法结合律,不改变其顺序,只用括号表示成对的乘积,试问有几种括号化的方案?
  3. 将多边行划分为三角形问题。将一个凸多边形区域分成三角形区域(划分线不交叉)的方法数?
  4. 出栈次序问题。一个栈(无穷大)的进栈序列为 1、2、3、...、n,有多少个不同的出栈序列?
  5. 通过连结顶点而将 n + 2 边的凸多边形分成三角形的方法个数。
  6. 所有在 n*n 格点中不越过对角线的单调路径的个数。
  7. 有 n+1 个叶子的二叉树的个数。

更多的变化不胜枚举,遇到这类规律题建议使用下一节讲的 OEIS 来解决问题。

🧊🧊🧊3.10 规律神奇OEIS

使用OEIS,你可以飞快解出那些所谓推公式的规律难题,但是需要进入网站才可,所以如果考试不允许切换网页就不要用这种方法了。

它的网址:http://oeis.org/

只要你输入前几项,它就可以给你找出规律来,并且自动给你推出公式。所以对于找规律的题目,你只需要手动计算出前几项的值,或者暴力打表求出前几项的值,然后输入 OEIS,他就可以告诉你公式是什么。

接下来,我们就用这个神器来练练手~

🥥例题:DreamJudge 1479

对于这类让我们去找有多少种情况的题目,第一反应就是他是有规律的,它的规律可能简单,也可能很难。这时候我们先推出它的前几项值,n 为 1 时答案等于 1,n 为 2 时答案等于 2,n 为 3 时答案等于 3,n 为 4 时答案等于 5。然后我们将这前几项值 1,2,3,5 输入到OEIS 中,它立马告诉我们这个规律是斐波那契数列,f[i]=f[i-1]+f[i-2]。

#include <stdio.h>
long long f[10005] = {0};
int main(){int n;scanf("%d", &n);f[0] = 1; f[1] = 1;for (int i = 2; i <= n; i++) {f[i] = f[i-1] + f[i-2];f[i] %= 2333333;}printf("%lld\n", f[n]);return 0;
}

创作不易,点个赞吧~点赞收藏不迷路,感兴趣的宝子们欢迎关注该专栏~

勤奋努力的宝子们,学习辛苦了!🌷🌷🌷休息下,我们下部分再见👋( •̀ ω •́ )✧~

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 基于Arch的轻量级发行版Archcraft结合内网穿透实现远程SSH连接
  • Python居然有这么多文件扩展
  • Docker手动在虚拟机上部署前端、后端和数据库
  • SAP LE学习笔记04 - MM与WM跨模块收货到仓库的流程中 如何既创建TR又同时立即在前台创建TO
  • jmeter安装及环境变量配置、Jmeter目录介绍和界面详解
  • Pcie学习笔记(24)
  • Mysql原理与调优-Mysql的内存结构
  • Flask框架探索:轻量级与灵活性的完美结合
  • 入门mysql数据库
  • 空状态设计教程:连接用户体验的桥梁
  • 制造企业MES系统质检管理的应用
  • 【杂乱算法】前缀和与差分
  • [Linux#42][线程] 锁的接口 | 原理 | 封装与运用 | 线程安全
  • 使用 Vue 官方脚手架初始化 Vue3 项目
  • 基于UE5和ROS2的激光雷达+深度RGBD相机小车的仿真指南(二)---ROS2与UE5进行图像数据传输
  • IE9 : DOM Exception: INVALID_CHARACTER_ERR (5)
  • golang 发送GET和POST示例
  • Java 最常见的 200+ 面试题:面试必备
  • Javascript基础之Array数组API
  • Java多态
  • orm2 中文文档 3.1 模型属性
  • PaddlePaddle-GitHub的正确打开姿势
  • Python中eval与exec的使用及区别
  • Solarized Scheme
  • spark本地环境的搭建到运行第一个spark程序
  • text-decoration与color属性
  • vue 个人积累(使用工具,组件)
  • WinRAR存在严重的安全漏洞影响5亿用户
  • 不上全站https的网站你们就等着被恶心死吧
  • 测试开发系类之接口自动化测试
  • 机器学习 vs. 深度学习
  • 免费小说阅读小程序
  • 如何优雅地使用 Sublime Text
  • 深入浏览器事件循环的本质
  • 优化 Vue 项目编译文件大小
  • 这几个编码小技巧将令你 PHP 代码更加简洁
  • 函数计算新功能-----支持C#函数
  • 新海诚画集[秒速5センチメートル:樱花抄·春]
  • ​ 无限可能性的探索:Amazon Lightsail轻量应用服务器引领数字化时代创新发展
  • ​configparser --- 配置文件解析器​
  • ​html.parser --- 简单的 HTML 和 XHTML 解析器​
  • ‌前端列表展示1000条大量数据时,后端通常需要进行一定的处理。‌
  • #NOIP 2014#day.2 T1 无限网络发射器选址
  • #设计模式#4.6 Flyweight(享元) 对象结构型模式
  • (2)STL算法之元素计数
  • (C#)获取字符编码的类
  • (Note)C++中的继承方式
  • (poj1.3.2)1791(构造法模拟)
  • (Windows环境)FFMPEG编译,包含编译x264以及x265
  • (大众金融)SQL server面试题(1)-总销售量最少的3个型号的车及其总销售量
  • (解决办法)ASP.NET导出Excel,打开时提示“您尝试打开文件'XXX.xls'的格式与文件扩展名指定文件不一致
  • (企业 / 公司项目)前端使用pingyin-pro将汉字转成拼音
  • (三)终结任务
  • (四)鸿鹄云架构一服务注册中心
  • (四)事件系统