数论
枚举星星
这个作者很懒,什么都没留下…
展开
-
牛客暑假多校 200712J Easy Integration 费马小定理/预处理/快速幂
链接:https://ac.nowcoder.com/acm/contest/5666/J来源:牛客网题意+思路让你求n取不同值时候的积分,求出来是p/q的形式 问你变成p * q^(-1) mod 998244353 的形式结果是几自己没推出来题解推出来是要求的p/q是 ( n! )^2 / ( ( 2n+1 )! )那么我们其实要求 pq^-1(mod 998244353)那么p好求 预处理阶乘后O1查询即可。那么q的逆呢?根据费马小定理 若模数m是质数q^(m-1) =原创 2020-07-14 10:51:11 · 139 阅读 · 1 评论 -
蓝桥 - 阶乘位数
题意:问你 n的阶乘 第一个超过10000位的n是多少。因为 n!=n*(n-1) * (n-2)* ……*2 *1然后如果求十进制下有多少位 即对10取对数然后+1所以总的长度就是 log10(n)+log10(n-1)+log10(n-2)+……+log10(1)+1 注意最后这个+1很重要所以代码如下:all是长度using namespace std;int main()...原创 2020-03-29 10:16:08 · 148 阅读 · 0 评论 -
Codeforces621D 高精度 long double + 取log
这题。。。一言难尽意思是给你 x y z 让你求十二种形式哪个最大x的y次幂的z次幂啊balabala各种组合自己刚开始wa到第五组也不知道咋回事 后来发现是最后一组写错了数据范围0.1~200.0而且我是取了两次log 网上说精度会有损失所以long double+一次log是最稳妥的下面放一下各种浮点数范围float 32bit -3.410 ^ 38 ~+3.410...原创 2020-02-27 10:49:39 · 279 阅读 · 0 评论 -
容斥原理、欧拉定理 题集(由易到难)
题源:[LightOJ1414](http://lightoj.com/login_main.php?url=volume_showproblem.php?problem=1414)原创 2020-01-26 21:47:46 · 591 阅读 · 0 评论 -
HDU1796 How many integers can you find 容斥原理/dfs
题源:https://vjudge.net/problem/13388/origin题意:给你数n,m;再给你m个数,问你从1~(n-1)中有多少个数可以被m集合中任意一个数整除。m<=20.思路:考虑到m很小,所以直接深搜即可。核心思想是容斥,和算年份那个(LightOJ1414)差不多。搜索到奇数层时加上,偶数层时减去。 ans便是最终答案。下面是核心代码:void dfs(in...原创 2020-01-17 10:37:12 · 102 阅读 · 0 评论 -
HDU1576 A/B 简单数论 拓展欧几里得/穷举
题意:给你A,B这两个数,要你求: A/B%9973。但是由于A太大,只给出n,n=A%9973。思路:数学题一枚,所以我很难跟你解释(因为我也是看的题解。。。),代码实现并不长,重在分析。下面就把式子的转化过程列举一下吧,比较简单的。我们先设 要求出的结果为x(x=A/B%9973).然后可以转化一下,得到A/B=k·9973+x. 其中k为自然数。继续转化,A=k·B·9973+x·...原创 2019-09-09 09:45:21 · 117 阅读 · 0 评论 -
LightOJ1282 数论
题目来源:https://vjudge.net/problem/LightOJ-1282题意:给你两个数n和k,问你n的k次方的前三位和后三位是多少。思路:首先后三位好求,就是快速幂模1000;前三位不好求,我们做如下分析:设n ^ k=10 ^ m,然后m一定是一个既有整数部分又有小数部分的数,即:n ^ k=10 ^ ( x + y ) = 10 ^ x * 10 ^ y ,其...原创 2019-09-20 22:15:31 · 161 阅读 · 0 评论