随笔分类 - ACM / 数学
摘要:一、欧几里得算法 1.简介 欧几里得算法又称辗转相除法,这种算法我们在高中的数学书上都有所了解,这种算法的用途是旨在求两个数的最大公约数(英文缩写为gcd)。 2.算法分析 例如,如果我们要求去寻找12和16的最大公约数,我们可以这样操作: 第一步:16 mod 12 = 4; 第二步:12 mod
阅读全文
摘要:一、什么是差分数组? 差分数组本质上来说就是一个数组,可以用O(1)的时间处理区间修改。 二、差分数组的定义式 设原数组为a数组,差分数组为d数组,则对于i∈[2,n],都有d[i]=a[i]-a[i-1]. 三、差分数组的性质 1.当我们需要更新区间[l,r]时候(仅指加减运算),我们仅仅可以只更
阅读全文
摘要:所谓的素数(质数),就是该数只能被1和他本身整除的数。 暴力写法 #include<bits/stdc++.h> using namespace std; int main(){ int n; cin>>n; for(int i=2;i<=sqrt(n);i++){ if(n%i==0){ cout
阅读全文
摘要:康拓展开 当我们去搜康托展开这个关键字的时候,映入眼帘的是下面的一大堆公式: 其中X为康拓展开值 为整数,且 且表示袁数在当前未出现的元素是排第几个。 很不错,这样一下子会把人弄得搞陀不清(湖南方言)。 所以,当我们学习一个算法的时候,首当其冲的应该是要知道此算法到底是做什么用的? 百度百科是这样解
阅读全文