数论
不徐不急
命,弱者的借口;运,强者的谦词。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
数论--最小公倍数
记录 求两个数的最小公倍数:lcm=a*b/gcd(a,b); 求一组数据的最小公倍数: ll lcm(int n) { int num; for(int i=0; i<n-1; i++) { num=__gcd(s[i],s[i+1]); s[i+1]=s[i]/num*s[i+1]; } return s[n...原创 2019-07-22 10:18:57 · 528 阅读 · 0 评论 -
基姆拉尔森计算公式
int Date(int y,int m,int d) { if(m==1||m==2) { m+=12; y--; } int week = (d + 2*m +3*(m+1)/5 + y + y/4 - y/100 + y/400)%7+1; return week; } 1-7代表周一至周日。 hdu 6112: 挺简单的。不过wa了一发。因为最开始忘记了2月29日...原创 2019-08-13 15:57:41 · 2921 阅读 · 0 评论 -
数论——求N!末尾的零
举个例子,比如10! 10!=1*2*3*4*5*6*7*8*9*10; 会产生两个零。 为什么呢? 数末尾的零,可以看成2*5,比如130=13*10=13*2*5; 而10!中,只有5,和10会各自产生一个5,而且因为偶数就会产生2,比如2 4 6 8 10 所以,求N!末尾的零就是求1-N会产生多少个5 很容易想到N/5,但是要注意25,125这些连续5相乘产生的数,所以正确的...原创 2019-09-09 13:12:12 · 492 阅读 · 0 评论 -
计蒜客——忽明忽暗
首先,这是一道模拟题,但数据范围很大,1e18. 所以,我们先暴力求解+打表,发现一下规律: #include<iostream> #include<cstring> #include<string> #include<cmath> #define ll long long using namespace std; const i...原创 2019-09-09 18:51:43 · 321 阅读 · 1 评论
分享