数学
文章平均质量分 70
凯凯凯哥
从一只小白逐渐变黑
展开
-
素数打表
首先我们先来了解一下什么是素数:素数(又称质数):就是除了1和它本身,没有其他因子的整数。注:1既不是素数,也不是合数。 其实判断一个数是不是素数也非常简单,zhi'直接看他有几个因子就行了,一个fou循环就结束了,那么如果我让你找出100以内的素数,你怎么找,你首先会想到的是,那还不简单吗?两个fou循环就够了,那么如果我让你求1e5以内的素数呢你在用两个fou循环时间...原创 2018-08-27 21:42:07 · 329 阅读 · 0 评论 -
容斥定理(二进制枚举)入门
什么是容斥定理呢?我们先从一道题入手开始吧:问题:魔镜给小明m个数字(a1、a2 …… am)和一个整 数n,魔镜定义:如果有一个数,是这m个数字里面任意一 个数的倍数,那么这个数称为LuckyNumber。而小明会的题 数为[1,n]闭区间内LuckyNumber的数量。 (0 < m < 15) 那么请你帮小明计算一下他会的题目数。我们怎么去计算小明会的做题数呢?我们只要找到1...原创 2018-10-07 10:28:56 · 405 阅读 · 0 评论 -
欧拉函数
这次介绍的是一个模板,至于它的推导过程什么的,我现在水平有限还不会,今天的我只介绍这个代码和它的功能,这个欧拉函数的功能试什么呢?我们可以通俗地理解为求小于N且与N互质的数的个数(包含1).就是任意的给你一个整数n,你能够求出从1到n这写数字中与n互质的个数,其中包括1;这个模板的复杂度是O(n),相对而言复杂度还是比较低的。你可以把它当成一个工具,每次如果需要用的时候你拿来用...原创 2018-10-07 12:40:30 · 148 阅读 · 0 评论 -
质因子分解
首先先来说一个算是结论吧!也可以说是一个数学定义吧:任何一个大于1的自然数N,如果N不为质数,那么N可以分解 成有限个质数的乘积,并且在不计次序的情况下,这种分解 方式是唯一的。 就是随便给你一个非质数,我们都可以用几个质数的乘积去表示,而且如果不考虑先后顺序的情况下,这几个质数的种类和个数是唯一的。 今天我们要做的就是给你一个非质数,然后你把它分解成...原创 2018-09-28 23:33:10 · 5496 阅读 · 3 评论 -
hdu-2058
晚上放学后没事干准备刷几道题,结果第一道题都不会写了,一道题卡了好久,最后也是没有写出来,唉!好无奈,最后还是看了别人的代码,原来是一道数学类型的题,就是推公式吧,如果你能够推出来,这道题也就写出来了。 Problem Description Given a sequence 1,2,3,......N, your job is to calculate all the pos...原创 2018-11-12 22:39:45 · 409 阅读 · 0 评论 -
被一些数字整除的数字的特征
一些数字能不能被一些数字整除,这都是有规律的。下面就来说一说能被一些比较小的数字整除的数的特征。能被2整除:数字应是偶数。能被3整除:各位数字之能被3整除。能被4整除:最后两位数字组成的两位数能被4整除。能被5整除:最后一个数字为0或5.能被6整除:同时满足能被2整除和能被3整除的两个特征。能被7整除:设一个数为abc def , 则def - abc 能被7整除 ,又...原创 2019-04-09 16:33:14 · 2353 阅读 · 0 评论 -
矩阵快速幂模板
#include<stdio.h>#include<string.h>using namespace std;#define ll long long#define met(d,dd) memset(d,dd,sizeof(d))const ll mod=10000;struct stu{ int a[3][3];};stu cheng(stu...原创 2019-07-31 10:03:47 · 185 阅读 · 0 评论 -
逆元
时隔一年了,又重新学了逆元。首先来说一下逆元的概念,逆元,什么是逆元呢,设c是b的逆元,那么b*c%m=1,一个数字是另一个数字的逆元是在另一个数字的前题下的,就是一说谁是谁的逆元,必须是在一个数字的前提下的,逆元和倒数差不多,但是又不是倒数,再说一下逆元的作用,逆元是用来干什么的,怎么说呢,下想一个问题吧,求 (a/b)%m这个式子的结果,是不是无从下手,我们假如c是b的逆元,那么b*...原创 2019-07-22 18:55:29 · 435 阅读 · 0 评论 -
大数模板
//大数相加#include <stdio.h>#include <string.h>#define MAXN 100int an1[MAXN+10];int an2[MAXN+10];char str1[MAXN+10];char str2[MAXN+10];int main(){ memset(an1,0,sizeof(an1)); ...原创 2019-08-05 16:21:08 · 100 阅读 · 0 评论