数学
error0318
这个作者很懒,什么都没留下…
展开
-
projectEuler Problem 16.Power digit sum
题目链接:16.Power digit sum题意: 求2的1000次方的每一位之和2^15= 32768 and the sum of its digits is 3 + 2 + 7 + 6 + 8 = 26.解题思路: 直接算肯定是超范围,所以,使用数组进行次方的模拟乘法运算#include <bits/stdc++.h>using namespace std;typedef long long ll;const int maxn = 2500;i...原创 2020-09-17 12:52:32 · 119 阅读 · 0 评论 -
projectEuler Problem 13 .Large sum(大数相加)
题目链接:13 .Large sum题意: 给100个长度为50的数字,求数字之和的前10位解题思路: 也就是大数相加,使用数组进行模拟即可#include <bits/stdc++.h>using namespace std;typedef long long ll;int main() { string s, t; int n; int a[100]; memset(a, 0, sizeof(a)); cin >> n; /...原创 2020-09-14 21:02:43 · 165 阅读 · 0 评论 -
projectEuler Problem 12.Highly divisible triangular number
题目链接:12.Highly divisible triangular number题意:The sequence of triangle numbers is generated by adding the natural numbers. So the 7thtriangle number would be 1 + 2 + 3 + 4 + 5 + 6 + 7 = 28. The first ten terms would be:1, 3, 6, 10, 15, 21, 28, 36...原创 2020-09-13 17:00:38 · 109 阅读 · 0 评论 -
N!的标准分解
定理: 在 n! 的标准分解式 中 ,素数 P的最高指数p(n ! ) = [n/p]+ [n/p2]+ … + [ n/pk ]. [n/p] :n/p 向下取整 , p 为不大于n的所有素数n! = p1^p1(n!) * p2^p2(n!) * p3^p3(n!) ........pn^pn(n!) pn 为小于n的最大素数...原创 2019-09-01 10:12:53 · 3497 阅读 · 0 评论 -
积性函数
积性函数:对于任意互质的整数a和b有性质 f(a*b) = f(a) * f(b)的数论函数。完全积性函数:对于任意整数a和b有性质f(a*b) = f(a) * f(b)的数论函数积性函数举例1. φ( n ) - 欧拉函数2.μ(n) -莫比乌斯函数,关于非平方数的质因子数目3.gcd(n,k) -最大公约数,当k固定的情况性质 一: 若...原创 2019-08-29 15:47:28 · 149 阅读 · 0 评论 -
最大公约数(欧几里得算法),最小公倍数
最大公约数:两个或多个整数 共有 的最大约数求法:辗转相除法(欧几里得算法)代码实现gcd(a, b) = gcd(b, a%b)long long gcd(long long a, long long b){ return b == 0 ? a : gcd(b, a%b);}int gcd(int a,int b){ if(b==0){ re...原创 2019-08-29 16:15:36 · 342 阅读 · 0 评论 -
扩展欧几里得算法 求解 丢番图方程
丢番图方程: 有一个或者几个变量的整系数方程,它们的求解仅仅在整数范围内进行。 a * x + b * y = c ( 其中所有数均为整数, 已知 x, y, c) 例如:鸡兔同笼问题.扩展欧几里得算法: 拓展欧几里得算法是基于欧几里得算法而来解 一类特殊的线性丢番图方程:a * x + b * y = gcd(a,b) (已知 a, ...原创 2019-08-29 16:22:36 · 960 阅读 · 0 评论 -
逆元(费马小定理,扩展欧几里得)
定义:、在数学里,逆元素广义化了乘法中的倒数。若,b*b1 % c == 1,则b1称为 b 模c 的乘法逆元。那么对于除法来说,(a /b) % m 时,因b可能会过大,就有 ( a / b ) % c == ( a * b1 ) % c求逆元方法:1.费马小定理求逆元(费马小定理证明)【当p较大时应该使用此方法】 a^(p−1) ≡ 1 (mod p) = ...原创 2019-08-29 20:27:12 · 229 阅读 · 0 评论 -
费马小定理证明过程
在数论中,欧拉定理,(也称费马-欧拉定理)是一个关于同余的性质。欧拉定理表明,若n,a为正整数,且n,a互质,则:折叠证明:将1~n中与n互质的数按顺序排布:x1,x2……xφ(n) (显然,共有φ(n)个数)我们考虑这么一些数:m1=a*x1;m2=a*x2;m3=a*x3……mφ(n)=a*xφ(n)(1)这些数中的任意两个都不模n同余,因为如果有mS≡mR (mod ...转载 2019-08-30 08:33:49 · 5029 阅读 · 0 评论 -
唯一分解定理(算数基本定理)
定义: (1)任何一个大于1的自然数N,如果N不为质数,那么N可以唯一分解成有限个质数的乘积即 N = P₁^a₁ * P₂^a₂ * P₃^a₃ ......这里P1<P2<P3......<Pn均为质数,其中指数ai是正整数。这样的分解称为N的标准分解式。#include<bits/stdc++.h>typedef long long ...原创 2019-08-30 15:51:30 · 400 阅读 · 0 评论 -
codeforces 1400 B. RPG Protagonist
题目链接:codeforces 1400 B. RPG Protagonist 题意: 给出 p, f, cnts, cntw, s, w,有4个未知数,x1, y1, x2, y2,要求为: x1 * s + y1 * w <= p x2 * s + y2 * w <= f x1 + x2 <= cnts ...原创 2020-08-26 17:36:15 · 218 阅读 · 0 评论 -
LeetCode 1551. 使数组中所有元素相等的最小操作数
题目链接:1551. 使数组中所有元素相等的最小操作数题意: 存在一个长度为 n 的数组 arr ,其中 arr[i] = (2 * i) + 1 ( 0 <= i < n )。一次操作中,你可以选出两个下标,记作 x 和 y ( 0 <= x, y < n )并使 arr[x] 减去 1 、arr[y] 加上 1 (即 arr[x] -=1 且 arr[y] += 1 )。最终的目标是使数组中的所有元素都 相等 。题目测试用例将会 保证 :在执行若干步操作后,...原创 2020-08-20 22:20:17 · 565 阅读 · 0 评论 -
LeetCode 441.排列硬币
题目链接:441.排列硬币题意: 你总共有n枚硬币,你需要将它们摆成一个阶梯形状,第k行就必须正好有k枚硬币。给定一个数字n,找出可形成完整阶梯行的总行数。n是一个非负整数,并且在32位有符号整型的范围内解题思路: 因为第 k 行必须有 k枚硬币,所以很简单的看出一个等差数列2 * n = m + m * m判断如果m+m*m <= 2 * n,那么说明,有m行完整,否则m-1行完整class Solution { /** ...原创 2020-08-15 22:00:34 · 131 阅读 · 0 评论 -
牛客网字节跳动算法题:万万没想到之抓捕孔连顺
题目链接:万万没想到之抓捕孔连顺题意:输入一个n,d,n代表n个点,d间隔代表最大距离,然后输入n个点问有多少种组合,三个点的最大差值小于d解题思路: 当两点距离刚好在范围内时,通过规矩可以发现 ,此时的组合为 n*(n-1) / 2,那么只需寻找极限距离即可#include <bits/stdc++.h>using namespace std;long long mod = 99997867;long long a[1000001];int main()...原创 2020-05-31 18:24:53 · 464 阅读 · 0 评论 -
2018 南京赛区网络预赛 An Olympian Math Problem
题目链接:An Olympian Math Problem题意 给出计算公式 S( n ) = 1×1! + 2×2! + ⋯+(n−1)×(n−1)!给定一个 n 求 S( n ) % n题解:1 + S(n) = 1 + 1×1! + 2×2! + ⋯+(n−1)×(n−1)! = 2×1! + 2×2!+⋯+(n−1)×(n−...原创 2019-08-29 15:00:45 · 152 阅读 · 0 评论 -
2019牛客暑期第二场 A .Eddy Walker(逆元,概率)
题意 t组测试,每行给n(代表n个点, 0 ,1,2 ....n-1),m。从0开始走,把n个点都走一遍结束。问在m点结束的概率是多少。输出前i个概率的积。题解 除了0,在其他点结束的概率都是一样的。也就是(1/(n-1).当n=1是,概率为1(因为只有一个点,0是起点也是终点)否则,m=0时,概率为0(因为初始从0开始,所以走完一遍绝对不会停在0上)。AC代码...原创 2019-08-09 09:39:21 · 143 阅读 · 0 评论 -
2019牛客多校第五场B.generator 1 (十进制矩阵快速幂)
题意: 已知 ,给n,mod, X0, X1, a, b求 Xn,题解 因为n太大,所以采用 十进制矩阵快速幂#include <bits/stdc++.h>using namespace std;typedef long long ll;int mod = 0;char s[1000005];struct Matrix{ ll a[2...原创 2019-08-13 21:07:09 · 108 阅读 · 0 评论 -
2019牛客暑期第一场 J Fraction Comparision(大数转换)
题意 给出4个超大数,比较x/a 和 y/b大小题解 刚开始过的是用Python写的,不用任何处理 c++:大数会超出范围,假分数的思想,先比较整数部分大小,在比较分数部分大小#include<bits/stdc++.h>using namespace std;typedef long long ll;int main(){ ll x, a, ...原创 2019-08-07 17:24:23 · 131 阅读 · 0 评论 -
2019牛客多校第三场 B.Crazy Binary String
题意 给n个0或1,求0和1个数相等的字串 和子序列 最长的长度。字串:连续子序列:不连续也行题解 字串:用前缀和,0代表-1, 1代表1, 用map存第一次出现前缀和的位置,如果出现和相等,则说明中间的0,1个数相等子序列:0和1的个数最小值 * 2;#include <bits/stdc++.h>using namespace st...原创 2019-08-10 10:12:41 · 136 阅读 · 0 评论 -
欧拉函数
互质:设有两个数a和b,(a,b≥1),如果其最大公约数c = gcd(a,b)=1,则称a和b互质求小于等于n的质数(埃拉托斯尼斯筛法)int is_prime[maxn+1];void getprime(ll n){ int p = 0; for(int i = 0; i <= n; i++) is_prime[i] = 1; is_prime[...原创 2019-08-23 20:48:58 · 436 阅读 · 0 评论 -
同余学习
同余: 定义:若整数 a 和整数 b 除以正整数 m的余数相等,则乘 a, b 模 m 同余,记为 a≡ b (mod m). 性质: ①相加性:a≡ b (mod m) , c≡ d (mod m ) , 则 (a + c )≡ (b + d) (mod m) ②乘法性:a≡ b (mod m) , c≡ d (mod m ) , 则 (a ...原创 2019-08-16 09:57:42 · 219 阅读 · 0 评论 -
费马小定理
如果p是一个质数,而整数a不是p的倍数,则有a^(p-1)≡1(mod p)。原创 2019-08-16 10:06:45 · 202 阅读 · 0 评论 -
二次剩余
求解x²≡ n (mod p) 的一个方法(已知 n, p , 求 x )如果存在一个 X, 满足 x²≡ n (mod p) ,那么我们称 n 是模 p 的二次剩余,否则 n 是模p 的非二次剩余代码模板求b对模p的二次剩余,即 x²≡ b (mod p ), 求x(对b == 0 的情况需特殊判断)#include <bits/stdc++.h>using...原创 2019-08-16 10:19:33 · 192 阅读 · 0 评论 -
2019牛客多校第四场 K.number
K.number题意: 给出一个字符串,判断能整除的字符串个数 600 输出4 600 0 0 00题解: 根据前缀和对3取余,答案加上00前面的前缀和对3取余的个数578162000 00 前面的2%3 == 2 , 2出现了3次 (表示前一个2到这一个2之间有两个3的倍数)上面的数前...原创 2019-08-12 20:01:20 · 137 阅读 · 0 评论 -
2019牛客多校第四场D. triples I
题意 给你一个n,问至少有几个数或运算起来可以等于n,并且输出数量和这个几个数(且这几个数是 3 的倍数)。题目说明给的n一定符合条件(不会输出n=1 之类不存在情况)。题解 题目说 n 一定符合条件,所以不考虑n==1 或 n == 4之类的数,此类数不符合条件分类讨论 当 n % 3 == 0 时,直接输出 n ,不用和其他数异或否则将n转换为二进制...原创 2019-08-13 09:12:04 · 159 阅读 · 0 评论 -
2019牛客多校 第九场 B.Quadratic equation
题意 p =1000000007. (x + y) % p = b (x * y) % p = c输入 b, c ,求 x,y,如果无解,输出-1 -1;题意: 求(x+y)² = b² (x - y)² = b² - 4 * c因为有模p, 所以求 (b² - 4*c) 对p的二次剩余(意思为在短时间内求出x-y的值)#...原创 2019-08-17 10:44:15 · 181 阅读 · 0 评论 -
codeforces 946B - Weird Subtraction Process(数学思想)
题目链接codeforces 946 B题意:Ifa = 0orb = 0, end the process. Otherwise, go to step2; Ifa ≥ 2·b, then set the value ofatoa - 2·b, and repeat step1. Otherwise, go to step3; Ifb ≥ 2·a, then ...原创 2019-08-05 13:59:24 · 272 阅读 · 0 评论