- 博客(28)
- 收藏
- 关注
原创 2021牛客寒假算法基础集训营1 补题报告
A-串题目描述长度不超过nn,且包含子序列“us”的、只由小写字母构成的字符串有多少个? 答案对1e9+71e9+71e9+7取模。所谓子序列,指一个字符串删除部分字符(也可以不删)得到的字符串。例如,“unoacscc"包含子序列"us”,但"scscucu"则不包含子序列"us"输入一个正整数n,(2≤n≤106)n,(2\le n\le10^6)n,(2≤n≤106)输出一个正整数,为满足条件的字符串数量对109+710^9+7109+7取模的值实例样例1输入2样例1输出1
2021-03-17 21:39:20 272
原创 2021牛客寒假算法基础集训营6 补题报告
F-组合数问题链接:https://ac.nowcoder.com/acm/contest/9986/F来源:牛客网小 M 很喜欢组合数。小 Z 给了她一个数 n (n为偶数),让她计算 (0n)+(2n)+(4n)+……+(nn)(^n_0)+(^n_2)+(^n_4)+……+(^n_n)(0n)+(2n)+(4n)+……+(nn),小 M 一下子就秒掉了,觉得题好简单。因此,小 Z 给了她一个难题:给定一个数 n (n 是4的倍数),计算(0n)+(4n)+(8n)+……+(nn)(^
2021-03-08 19:39:43 122
原创 BSGS大步小步算法
BSGS大步小步算法BSGS(Baby Step Giant Step)应该叫小步大步算法(北上广深算法)该算法用于解决例如:ax≡b(mod p) a^x \equiv b (mod\ p)ax≡b(mod p)类似这种式子也称为同余方程,或者叫做离散对数的问题。很容易想到,BSGS算法也可以用于求log。在同余问题中我们往往关注最小正整数解。解法如下先考虑无解,当gcd(a,b)≢1gcd(a,b) \not\equiv1gcd(a,b)≡1时肯定无解,因此常常保证
2021-01-04 19:40:33 355
原创 计算机网络自顶向下方法知识点整理(部分)
1-2物理媒体1.双绞铜线由两根绝缘的铜线组成,以规则的螺旋状排列。无屏蔽双绞线(UTP)10Mbps~10Gbps最终作为高速LAN联网的主导性解决方案也常用于住宅因特网接入2.同轴电缆由两个铜导体组成,是同心而不是并行的在电缆电视系统中应用普遍。发送设备将数字信号调制到某个特定的频段,产生的模拟信号从发送设备传输到一个或多个接收方。被用作引导型共享媒体3.光纤能够引导光脉冲的媒体。支持极高的比特速率。成为长途引导型传输媒体。常用于因特网主干。4.陆地无线电信道具有穿透墙壁、
2020-12-25 14:51:43 4226 3
原创 归并排序及逆序对
#include<set>#include<map>#include<queue>#include<stack>#include<cmath>#include<vector>#include<iostream>#include<algorithm>#include<cstdio>#include<cstring>#include<iomanip>usin
2020-12-02 19:15:26 84
原创 LightOJ - 1220 Mysterious Bacteria 唯一分解定理(k次幂数判定)
ProblemLightOJ1220Dr. Mob has just discovered a Deathly Bacteria. He named it RC-01. RC-01 has a very strange reproduction system. RC-01 lives exactly x days. Now RC-01 produces exactly p new deadly Bacteria where x = bp (where b, p are integers). More g
2020-11-18 19:50:50 181
原创 LightOJ - 1282 Leading and Trailing 稀疏打表或调和级数近似公式
ProblemDescriptionIn mathematics, the nthn^{th}nth harmonic number is the sum of the reciprocals of the first n natural numbers:In this problem, you are given n, you have to find HnH_nHn.InputInput starts with an integer T (T ≤ 10000), denoting the
2020-11-04 21:39:20 185
原创 2020ICPC小米邀请赛C Data Structure Problem 数据结构
C Data Structure Problem链接:https://ac.nowcoder.com/acm/contest/7502/C题目来源:牛客网题目描述Bobo has two sequences a1,a2,…,ana_1, a_2, \ldots, a_na1,a2,…,an and b1,b2,…,bnb_1, b_2, \ldots, b_nb1,b2,…,bn. He would like to perform the following operations:
2020-11-01 18:50:59 247
原创 Goldbach`s Conjecture LightOJ - 1259快速幂+数位缩减
ProblmeLightOJ - 1259DiscriptionYou are given two integers: n and k, your task is to find the most significant three digits, and least significant three digits of n^k.InputInput starts with an integer T (≤ 1000), denoting the number of test cases.
2020-10-30 20:45:32 83
原创 Sigma Function LightOJ - 1336 唯一分解定理+约数和计算方法
ProblemLightOJ1336DiscriptionSigma function is an interesting function in Number Theory. It is denoted by the Greek letter Sigma (σ). This function actually denotes the sum of all divisors of a number. For example σ(24) = 1+2+3+4+6+8+12+24=60. Sigma of
2020-10-30 19:30:51 120
原创 Aladdin and the Flying Carpet LightOJ - 1341 唯一分解定理+约数个数计算方法
ProblemLightOJ1341DiscriptionIt’s said that Aladdin had to solve seven mysteries before getting the Magical Lamp which summons a powerful Genie. Here we are concerned about the first mystery.Aladdin was about to enter to a magical cave, led by the evi
2020-10-30 19:02:51 157
原创 欧拉函数-LightO_1370 Bi-shoe and Phi-shoe
ProblemLightOJ_1370Bamboo Pole-vault is a massively popular sport in Xzhiland. And Master Phi-shoe is a very popular coach for his success. He needs some bamboos for his students, so he asked his assistant Bi-Shoe to go to the market and buy them. Plenty
2020-10-27 17:28:13 213 1
原创 2019CCPC 女生赛C 二次函数思维(水?)题(贪心)
2019CCPC 女生赛C 二次函数思维(水?)题#include <iostream>#include <cstdio>#include <algorithm>#include <cmath>#include <string>#include <cstring>#include <map>#include <queue>#include <stack>using namespac
2020-10-19 21:19:01 187
原创 优先队列(堆)优化最短路Dijstra算法
在队友的强烈建议(压迫)下放弃了可能会被卡死的优先队列优化SPFA去计算最短路于是现学了Dij算法。为了避免某比赛上忘记,疯狂背板子(怨念.jpg)题目来源:洛谷P4779模板题Dijkstra算法适用于边权为正的无向和有向图,不适用于有负边权的图基本思想:将图上的初始点看作一个集合S,其它点看作另一个集合根据初始点,求出其它点到初始点的距离dis[i] (若相邻,则dis[i]为边权值;若不相邻,则d[i]为无限大)选取最小的dis[i](记为dis[x]),并将此dis[i]边对应的
2020-10-15 16:10:53 242
原创 同余问题及线性同余方程(组)
同余问题及线性同余方程(组)同余定义 如果a,b除以c的余数相同,就说a和b关于模c同余记作a≡b(mod c) 还可以这样理解 a-b=t,若t|c(表示t可以被c整除),则a≡b(mod c)性质同余关系是一种等价关系。1.自反性:一个数永远和自己本身同余 a≡a(mod)2.对称性:a和b同余,b也就同余a,即 a≡b(mod m)等价于b≡a(mod m)3.传递性:a和b同余,b和c也同余,可以推出a和c也是同余的运算加法 若 a≡b(mod m),x≡y(m
2020-10-07 22:54:23 1624 2
原创 n皇后问题(标准DFS)
N皇后问题递归DFS解法Description在N*N的方格棋盘放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成45角的斜线上。你的任务是,对于给定的N,求出有多少种合法的放置方法。Input共有若干行,每行一个正整数N≤10,表示棋盘和皇后的数量。Output共有若干行,每行一个正整数,表示对应输入行的皇后的不同放置数量。Sa...
2019-11-27 19:27:45 414
原创 最长不上升不下降子序列 SDNU 1040
最长爱上上升不上升爱下降不下降子序列两个函数upperbound和lowerbound(二分法)返回的都是地址lower_bound(数组头,数组长度,h) -a //找大于等于h的第一个元素的位置 左闭右开, 地址-地址=下标upper_bound(a,a+n,h)-a //找第一个大于h的元素的位置就记住一个问题,lower是不严格的,upper是严格的!!!!最长上升、不下降...
2019-11-26 19:45:23 244
原创 输入输出挂(快读)
快读模板ps:谨慎使用,不要想着在TLE的时候用快读卡过去。。。。还是好好改自己的算法吧//输入输出挂#include <iostream>#include <cstdio>#include <cmath>#include <string>#include <cstring>#include <algorithm&g...
2019-11-26 18:40:41 149
原创 快速幂与矩阵快速幂
快速幂与矩阵快速幂快速幂ll qsm(ll a,ll b,ll k){ ll ans=1; while(b) { if(b&1) ans=ans*a%k; b>>=1; a=a*a%k; } return ans;} b>>1这应用了二分的思想这里可以写一种递归的方式,但递归的局限性有点大- _-,所以就用了循环的方式(如上)....
2019-11-26 18:31:55 177
原创 最大公因数GCD及最小公倍数LCM
int gcd(int a,int b)//递归写法 { if(a%b==0) return b; else return gcd(b,a%b); //return b==0?a:gcd(b,a%b);}int gcd(int x,int y)//循环写法 { while(y!=0) { int z=x; x=y; y=z%y; } return x;}//...
2019-11-25 22:26:56 440
原创 欧拉筛素数
欧拉筛就是一个可以快速筛出素数的东西是一种线性的算法,时间复杂度应该是O(n)。基本思想:从2开始,将每个质数的倍数都标记成合数,且让每个合数只被它的最小质因子筛选一次,以达到不重复的目的,那么最终剩下的就都是素数惹。int flag[30000007];//记录筛没筛过 int cnt=0;int ans[30000007];//答案 void ohla(){ for(int...
2019-11-25 21:50:02 393
原创 线段树模板
线段树----单点、区间加法,单点、区间覆盖,区间最大最小值线段树基本知识详解可以看这个:https://www.luogu.com.cn/problemnew/solution/P3372摘录了一点点。。。对于每一个子节点而言,都表示整个序列中的一段子区间;对于每个叶子节点而言,都表示序列中的单个元素信息;子节点不断向自己的父亲节点传递信息,而父节点存储的信息则是他的每一个子节点信息的整...
2019-11-25 21:38:43 132
原创 树状数组
树状数组树状数组是相比于数组计算前缀和更优的算法原理如果一个数组a有八个数,它对应的树状数组c可以表示成这样:c1=a1;c2=a1+a2;c3=a3;c4=a1+a2+a3+a4;以此类推。。。。。。 很难说出他们的关系,但是如果把它们变为二进制c0001=a0001c0010=a0001+a0010c0011=a0011c0100=a0001+a0010+a0011+a...
2019-11-25 18:41:48 79
原创 常用STL函数
集成了可能用到的STL函数的用法肯定不全,找不到的去问神奇海螺⑧#include <iostream>#include <cstdio>#include <cmath>#include <algorithm>#include <cstring>#include <queue>#include <stack...
2019-11-19 21:53:18 177
原创 打擂台求众数 SDNUOJ-1555
SDNUOJ 1555Description柳予欣饿了,想要吃东西。现在有n个食物,第i个食物的种类是ai(1<=ai<=1e9)。柳予欣吃东西喜欢同时吃两个不同种类的食物,这样会增加她一点愉悦值,否则就不加。现在请问所有分配决策中能够获得的最大的愉悦值是多少?Input一个数字n(1 <= n <= 4.5e6)代表有几个食物,接下来一行n个数字,第i个数字ai...
2019-11-19 21:47:35 235
原创 种类并查集 sdnu 1076,1078
种类并查集相关题目sdnu 1076,1078思路对于题目中的k个种类,可以开k倍大的数组。由于对于某一确定元素,我们不清楚它具体属于哪一种类,只知道和另一元素的关系,同类/异类。因此,将每一元素对应到每一种类假设有三组,五个个体在本题的分组中n,n+k,n+2*k对应每一种类{A,B,C,D,E} {A,B,C,D,E} {A,B,C,D,E}那么对于每次判定同类的操作就是:输...
2019-11-15 21:36:07 318
转载 最小生成树 Kruskal 算法
最小生成树 Kruskal 算法算法解释先把边按照权值进行排序,用贪心的思想优先选取权值较小的边,并依次连接,若出现环则跳过此边(用并查集来判断是否存在环)继续搜,直到已经使用的边的数量比总点数少一即可。证明:刚刚有提到:如果某个连通图属于最小生成树,那么所有从外部连接到该连通图的边中的一条最短的边必然属于最小生成树。所以不难发现,当最小生成树被拆分成彼此独立的若干个连通分量的时候,所有能够...
2019-11-10 20:25:29 131
原创 最短路优先队列优化spfa
最短路优先队列优化spfa前置:链式前项星存图链式前项星存图相比一般的vector方法在代码上复杂度更高,但运行速度更快。struct edge{ int u,v; int w,ne;}ed[maxm];int head[maxm], cnt, vis[maxm],dis[maxm];void init() { cnt = 0; for (int i = 0; i &l...
2019-11-10 20:20:16 594
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人