Fork me on GitHub
摘要: 求$n!$中有多少个质因子p ###方法一(非递归) 结论:$n!\(中有\)(\frac+\frac{p2}+\frac{p3}+…)$个质因子p 时间复杂度:\(O(logn)\) int cal(int n,int p){ int ans=0; while(n){ ans+=n/p; n/=p 阅读全文
posted @ 2020-02-14 06:23 熠丶 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 转载于 https://www.zybuluo.com/codeep/note/163962 标签: Tutorial 点击跳转至 "Cmd Markdown 简明语法手册" ,立刻开始 Cmd Markdown 编辑阅读器的记录和写作之旅! 本文为 MathJax 在 Cmd Markdown 环 阅读全文
posted @ 2020-02-13 08:56 熠丶 阅读(236) 评论(0) 推荐(0) 编辑
摘要: 欧几里得算法(辗转相除法) 求两个正整数的最大公约数,时间复杂度 O(logn)。 欧几里得算法基于下面这个原理: 设a,b均为正整数,则gcd(a,b)=gcd(b,a%b)。 证明:设 a = kb + r,其中 k 和 r 分别为 a 除以 b 得到的商和余数。 则有 r = a kb 成立。 阅读全文
posted @ 2020-02-13 02:12 熠丶 阅读(521) 评论(0) 推荐(0) 编辑
摘要: 大整数的储存 为了方便随时获取大整数的长度,一般都会定义一个int型变量len来记录其长度,并和d数组组成结构体。 在输入大整数时,一般都是先用字符串进行读入,然后再把字符串另存为到bign结构体,由于按照字符串的顺序进行读入时,整数的高位就会变成数组的低位,所以要将字符串倒着赋给d[]数组。 vo 阅读全文
posted @ 2020-02-12 05:02 熠丶 阅读(400) 评论(0) 推荐(0) 编辑
摘要: #Eratosthenes筛法(埃氏筛) ####时间复杂度:O(\(nloglogn\)) ####思路 ####代码 const int N=1e6+10; //表长 int prime[N],cnt=0; //prime数组存放所以素数,cnt为素数个数 bool st[N]; //false 阅读全文
posted @ 2020-02-11 23:03 熠丶 阅读(659) 评论(2) 推荐(1) 编辑
摘要: ##快速幂的递归写法 typedef long long ll; ll binaryPow(ll a,ll b,ll m){ if(m==1) return 0; if(b==0) return 1; a%=m; if(b&1) return a*binaryPow(a,b-1,m)%m; else 阅读全文
posted @ 2020-02-11 04:42 熠丶 阅读(352) 评论(0) 推荐(0) 编辑
摘要: 这是一道来自《算法笔记》的题目 题目描述 给定 N 个线段的长度,试将它们头尾相接(顺序任意)地组合成一个凸多边形,使得凸多边形的外接圆的半径最大,求该最大半径。其中 N 不超过 105 ,线段长度均不超过 100 ,要求算法中不涉及坐标的计算。 考查内容 二分算法的本质就是通过不断迭代使left 阅读全文
posted @ 2020-02-08 06:10 熠丶 阅读(1305) 评论(0) 推荐(0) 编辑
摘要: lower_bound( )和upper_bound( )都是利用二分查找的方法在一个排好序的数组中进行查找的。 通常用sort函数从小到大排序。 在从小到大的排序数组中, lower_bound( begin,end,num):从数组的begin位置到end-1位置二分查找第一个大于或等于num的 阅读全文
posted @ 2020-02-08 01:42 熠丶 阅读(342) 评论(0) 推荐(0) 编辑
摘要: 1、string 概念:相当于char*的封装,理解为字符串 1.1.简单使用 /**C中定义字符串以及打印*/ char *ch="asdkajbf"; for(int i=0;ch[i]!='\0';i++) cout<<*(ch+i); /**C++中*/ string s="ssadaffw 阅读全文
posted @ 2020-02-06 18:43 熠丶 阅读(360) 评论(0) 推荐(0) 编辑
摘要: 一般ACM或者笔试题的时间限制是1秒或2秒。在这种情况下,C++代码中的操作次数控制在107为最佳。 下面给出在不同数据范围下,代码的时间复杂度和算法该如何选择: n≤30, 指数级别, dfs+剪枝,状态压缩dp n≤100 => O(n3),floyd,dp n≤1000 => O(n2),O( 阅读全文
posted @ 2020-02-03 22:00 熠丶 阅读(283) 评论(0) 推荐(0) 编辑