![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ACM
文章平均质量分 58
即将猝死的小太君
Acm is just a game,if you like it,enjoy it.
展开
-
除法取余 (b/a)%m
除法取余 (b/a)%m标签: ACM文章目录除法取余 (b/a)%m@[toc]逆元求解费马小定理gcd(a,m)!=1时逆元求解(a*b)%c=(a%c)*(b%c)%c,但是对于除法则没有这种算法,(b\a)%c!=(b%c)\(a%c)%c同余式的定义:ab≡1(modm)ab\equiv1(mod \quad m)ab≡1(modm)等价于(ab−1)=k∗m(ab-1)=...原创 2019-02-22 10:42:27 · 2076 阅读 · 1 评论 -
卢卡斯定理
卢卡斯定理 (C(n,m)%p)文章目录卢卡斯定理 (C(n,m)%p)条件:n,m<=1018,p为素数,p<=105,ll C(ll n,ll m){ ll ans=1; for(ll i=1;i<=m;i++){ ans=ans*(n-m+i)/i; } return ans;}int Lucas(ll n,ll m){...原创 2019-02-22 11:28:35 · 367 阅读 · 0 评论 -
牛客_小a的排列(模拟,思维)
牛客_小a的排列(模拟,思维)文章目录牛客_小a的排列(模拟,思维)题意代码分析题意一个长度为n的排列。定义一段区间是"萌"的,当且仅当把区间中各个数排序后相邻元素的差为1。现在他想知道包含数x,y的长度最小的"萌"区间的左右端点。也就是说,我们需要找到长度最小的区间[l,r],满足区间[l,r]是"萌"的,且同时包含数x和数y。如果有多个合法的区间,输出左端点最靠左的方案。输入..原创 2019-02-27 21:15:35 · 286 阅读 · 0 评论 -
并查集模板
并查集模板void init(int n){ for(int i=0;i<n;i++) par[i]=i,tall[i]=1;}int find(int x){ if(par[x]==x)return x; else return par[x]=find(par[x]);}void unite(int x,int y){ int...原创 2019-02-18 19:25:33 · 95 阅读 · 0 评论 -
L1_049天梯赛座位分布
L1_049天梯赛座位分布标签:ACML1-049 天梯赛座位分配 (20 分)天梯赛每年有大量参赛队员,要保证同一所学校的所有队员都不能相邻,分配座位就成为一件比较麻烦的事情。为此我们制定如下策略:假设某赛场有 N 所学校参赛,第 i 所学校有 M[i] 支队伍,每队 10 位参赛选手。令每校选手排成一列纵队,第 i+1 队的选手排在第 i 队选手之后。从第 1 所学校开始,各校的第 1...原创 2019-02-28 18:55:23 · 182 阅读 · 0 评论 -
最小生成树专题
最下生成树专题文章目录最下生成树专题Prim(O(v^2),堆优化版O(ElogV))Kruskal(O(ElogV))Prim(O(v^2),堆优化版O(ElogV))思想和dijkstra差不多,因kruskal常用且简单,这里不提供prim的堆优化版int cost[maxv][maxv];//不存在边时为INFint d[maxv];bool vis[maxv];in...原创 2019-02-19 21:38:53 · 136 阅读 · 0 评论 -
树状数组
树状数组(求前缀和的利器)已同步标签:ACM文章目录树状数组(求前缀和的利器)已同步一维树状数组二维及以上的树状数组区间更新,单点查询一维树状数组//bt[i]和bt[j]管辖的区间之间要么是完全包含的,要么是不重叠的//b[i]覆盖的长度是lowbit(i)int bt[maxn];//树状数组,下标必须从1开始,不然lowbit(0)=0会出现死循环#define low...原创 2019-02-25 14:42:30 · 82 阅读 · 0 评论 -
家庭房产(合理规划)
家庭房产(合理规划)L2-007. 家庭房产-PAT团体程序设计天梯赛GPLT给定每个人的家庭成员和其自己名下的房产,请你统计出每个家庭的人口数、人均房产面积及房产套数。输入格式:输入第一行给出一个正整数N(&lt;=1000),随后N行,每行按下列格式给出一个人的房产:编号 父 母 k 孩子1 … 孩子k 房产套数 总面积其中 编号 是每个人独有的一个4位数的编号;父 和 母 分别...原创 2019-03-01 21:40:12 · 709 阅读 · 0 评论 -
容斥定理,欧拉函数
https://blog.csdn.net/xianglunxi/article/details/9310105文章目录欧拉函数性质思想:逆向思维,正面解不方便的时候,考虑其反面欧拉函数的值:f(n)表示0-n-1过程中与n互素的数的个数函数值为:先将n表示成质因子之积的形式设为p1,p2,pn,则函数值f(n)=n*(1-1/p1)(1-1/p2)*…*(1-1/pn)//质...原创 2019-02-26 21:29:05 · 437 阅读 · 0 评论 -
搜索专题
搜索专题Tags : ACM搜索专题主要就是围绕dfs()和bfs().这两个函数其实不难,搜索可以解决很多最小路径,最少次数问题bfs()等问题;维数从一维到三维;主要抓住移动的方向的控制,以及对访问过的状态的标记,以免重复访问,重复访问一方面运行时间加长另一方面申请的空间也会无厘头的暴增;路径记录问题;曾经在刷一道题的时候,系统显示的使用空间远远大于定义变量的空间,一时...原创 2019-04-06 18:36:57 · 279 阅读 · 0 评论 -
动态规划
动态规划专题标签: ACM文章目录动态规划专题动态规划思想最大连续子序列和最长不下降子序列(LIS)最长公共子序列(LCS)最长回文子串背包专题01背包完全背包动态规划思想动态规划问题是指可以将一个复杂的问题分解为若干个子问题,而子问题又可以分解成更子的问题(就像分割一样),通过最小的子问题的最优解一步一步往上,进而得到原问题的最优解和分治的区别:两者都是分解得到子问题,通过子问题...原创 2019-03-29 10:30:43 · 157 阅读 · 0 评论 -
有几个PAT
有几个PAT标签(空格分隔): 蓝桥文章目录有几个PAT题目描述:解法一:通用解法二:题目描述:字符串APPAPT中包含了两个单词“PAT”,其中第一个PAT是第2位(P),第4位(A),第6位(T);第二个PAT是第3位(P),第4位(A),第6位(T)。现给定字符串,问一共可以形成多少个PAT?输入格式:输入只有一行,包含一个字符串,长度不超过105,只包含P、A、T三种字...原创 2019-02-09 10:10:14 · 143 阅读 · 0 评论 -
C++加速读取和其他加速
标题输入函数对比模板:std::ios::sync_with_stdio(false);//关闭同步后据说不能和C的输入输出混用,出玄学问题std::cin.tie(0);cout<<'\n';for(register int i=0;i<n;i++)要点:1,fread,read,mmap不是很常用的函数,比较难写,竞赛中一般使用不到,常用的是scan...原创 2018-09-22 10:43:06 · 2707 阅读 · 0 评论 -
任意多边形面积—有向面积
给定多边形的顶点坐标(有序),让你来求这个多边形的面积,你会怎么做?我们知道,任意多边形都可以分割为N个三角形,所以,如果以这为突破点,那么我们第一步就是把给定的多边形,分割为数个三角形,分别求面积,最后累加就可以了,把多边形分割为三角形的方式多种多样,在这里,我们按照如下图的方法分割:图1(点如果是顺时针给出,有向面积为负,逆时针给出,有向面积为正)对于图1而言,多边形的...原创 2018-07-31 09:47:33 · 16790 阅读 · 1 评论 -
卢卡斯定理,费马小定理的应用
牛客多校第八场G:传送门卢卡斯定理:C(n,m)%p=C(n/p,m/p)*C(n%p,m%p)%p,组合数的取模费马小定理:当p为质数时候, a^(p-1)≡1(mod p), a*a^(p-2)≡1(mod p)费马小定理求解逆元:(a/b)%m 时,因b可能会过大,会出现爆精度的情况,所以需变除法为乘法:设c是b的逆元,则有b*c≡1(mod m); b*b^...原创 2018-08-14 16:54:46 · 296 阅读 · 0 评论 -
n个点把圆分成几个区域
是从这个视频里学到的总结一下: 1.欧拉示性数公式: 2.圆上点产生的边的数量 3.产生的交点数量 4.总的边数 ①新产生的边数 ②圆上的边数 总的边数 1.欧拉示性数公式:V+F−E=2V:顶点(Vertex)F:面(Face)E:边(Edge) 2.圆上点产生的边的数量因为两个点产生一条边,有n个点,所以产生C(n,2)条边...转载 2018-09-06 20:51:19 · 3370 阅读 · 0 评论 -
组合数的两种计算方法(递推,对数)
https://blog.csdn.net/sxh759151483/article/details/78161232组合数 从m个不同元素中,任取n(n≤m)个元素并成一组,叫做从m个不同元素中取出n个元素的一个组合;所有可能的组合种数就是组合数。组合数的计算公式如下图:式子中出现了阶乘,而20!=2.4329020081766 * 1018 这个数字已经和...转载 2018-08-13 10:11:39 · 1296 阅读 · 0 评论 -
Havel-Hakimi定理,可图性判定(是否可以连成图)
Havel定理描述给定一个非负整数序列{d1,d2,...dn},若存在一个无向图使得图中各点的度与此序列一一对应,则称此序列可图化。进一步,若图为简单图,则称此序列可简单图化。这个定理写起来麻烦,实际上就是说,我们把d 大到小排序以后,找出度最大的点(设度为d1),把它和度次大的d1个点之间连边,然后这个点就可以不管了,一直继续这个过程,直到建出完整的图,或出现负度等明显不合理的情况。...原创 2018-09-12 16:00:22 · 955 阅读 · 1 评论 -
Doing homework again贪心
题目链接:Click here~~题意:有 n 门作业,每门作业都有自己的截止期限,当超过截止期限还没有完成作业,就会扣掉相应的分数。问如何才能使扣分最少。解题思路1:把 n 门作业按分数从大到小排序,然后每次都把作业安排在离它的截止期限最近的一天(先安排在截止日期当天,如当天已有安排,则往前一天找),并把此天标记为已用,若不能安排,则扣分。#include <iost...原创 2018-09-13 21:11:22 · 196 阅读 · 0 评论 -
C++随机数函数
C++11新随机数函数,C++11 中提供的 random 库,里面函数很多,可以根据需要使用不同的函数,比如浮点随机数,非负整数随机数。非负整数随机数:名称功能Engine e创建一个引擎Engine e(s)创建一个引擎,并用 s 作为种子e.seed(s)使用种子 s 充值 e 的状态。e.min( ), e.max( )e 能生成...原创 2018-12-08 15:57:04 · 938 阅读 · 0 评论 -
数据结构期末复习
绪论一个通讯簿为数据,每一行为一个数据元素,每一行里面的每一项(如:名字,电话号码)为数据项,数据对象:相同性质数据元素的集合,数据元素为数据的基本单位数据结构:相互之间存在一种或多种特定关系的数据元素的集合数据元素之间的逻辑关系为数据的逻辑结构逻辑结构:任燕版线性结构(只有一个直接前驱和直接后继)非线性结构(可能有多个直接前驱或直接后继,集合,树,图)清华...原创 2019-01-20 17:40:02 · 242 阅读 · 0 评论 -
# C++输出格式控制(持续更新)
precision(n)保留n位小数输出原创 2018-12-06 21:15:57 · 164 阅读 · 0 评论 -
线段树专题
线段树(未完待续)文章目录线段树(未完待续)hdu 1166 敌兵布阵(线段树单点更新)洛谷P1047 校门外的树(线段树区间更新,区间查询)线段树区间设置值,区间查询ZOJ - 1610 Count the Colors(区间染色)线段树长度,若元素个数为n,一般开4倍(maxn<<2)的空间就不会溢出,hdu1166开两倍会超时,改成四倍就ac了,算法竞赛入门经典训练指南中开...原创 2019-05-11 21:25:12 · 223 阅读 · 0 评论