![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数论
zy-yz
编程小白一只
展开
-
斯特林公式求n!位数
斯特林公式(Stirling): 对右端取以10为的对数再加1就是n!的位数: 位数=(lg2πn)/2+nlg(n/e)+1代码如下: #include<stdio.h> #include<stdlib.h> #include<iostream> #include<algorithm> #include&l...原创 2018-07-13 12:58:26 · 301 阅读 · 0 评论 -
牛客小白赛专题
小白月赛8C-神秘钥匙:题目链接这个题是一个规律水题,公式为n*2^(n-1),然后再用快速幂计算#include<cstdlib>#include<algorithm>#include<string>#include<string.h>#include<cstring>#include<iostream&g...原创 2018-11-03 11:26:23 · 225 阅读 · 0 评论 -
牛客国庆集训派对Day1
A-Tobaku Mokushiroku KaijiA-Tobaku Mokushiroku Kaiji题目链接水题...不解释#include <stdio.h>#include<iostream>#include<algorithm>using namespace std;const int maxn = 210008;int a, ...原创 2018-10-09 22:09:20 · 223 阅读 · 0 评论 -
codeforces456B
题意:给一个数n,求(1^n + 2^n + 3^n + 4^n) mod 5,n (0 ≤ n ≤ 10^100000)。根据题意,这个n给的太大了,所以此题是规律题,打表得到循环节是[0,0,0,4],又根据数论,如果一个数可以被4整除,则只要这个数的最后两位被4整除即可。所以我们只取后两位%4即可。附:一个数可以被4整除,则只要这个数的最后两位被4整除的证明:任何一个数能写成...原创 2018-09-20 21:49:21 · 188 阅读 · 0 评论 -
codeforces851B
Arpa and an exam about geometry问题描述给你一张纸上的3个点,A,B,C问你能不能用手按住纸上的一个位置并且旋转,使得新的A取代了B的位置,新的B取代了C的位置。Input第一行6个整数,表示三个点的坐标Ax,Ay,Bx,By,Cx,Cy. 每个数字的绝对值<=10^9Output如果可以就输出"Yes",否则输出"No".Exam...原创 2018-09-20 20:58:20 · 1442 阅读 · 0 评论 -
矩阵快速幂+取模运算模板
#include<iostream>#include<cstdio>#include<cstring>#include<string.h>#include<string>#include<cmath>#include<algorithm>using namespace std;typedef lo原创 2018-08-08 20:58:12 · 902 阅读 · 0 评论 -
数学专题
约数个数定理若x=p1^a1*p2^a2*...*pn^an,(p1 p2 ... pn为素数)则约数个数为(p1+1)(p2+1)...(pn+1)ll getnum(ll n) //得到a的约数个数.{ ll res=1; for(ll i=2;i*i<=n;i++){ ll k=0; while(n%i == 0){ ...转载 2019-04-26 11:44:28 · 223 阅读 · 0 评论