![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
解忧杂货铺
文章平均质量分 68
。十二。
这个作者很懒,什么都没留下…
展开
-
关于堆+结构体的重载
关于优先队列的重载:当优先队列/堆中是结构体时,一定要先重新定义运算符或者自己定义一个比较函数。PS:当只有两个关键字的时候,最好用pair,可以自动先比较第一个在比较第二个法一:自己定义一个专门的结构体,用来比较#include<iostream>#include<cstdio>#include<cstring>#include<cmath>#include<queue>#define ll long longusing n原创 2022-01-19 16:52:01 · 328 阅读 · 0 评论 -
【Ybtoj 第13章例1】合并果子【二叉堆】
知识点:关于堆PS:还记得上周,我跟ajajaj说我们没有完整学过堆,只是之前打过类似题目,然后ajajaj大吃一惊,在机房问其他人,结果我震惊了,旁边的巨爷都说学过了,所以真的就我没打过堆(手打堆)吗???然后对面的cyzcyzcyz十分扎心地补了一句:“哦,那应该就。。(我)没有学吧”。。。然后aj就肯定的认为我之前没有来上课。。。我???结果:我气的跳过了前面的章节,直接来学堆了。。当然,我还是很懒不想总结,所以现在就到了安利博客的时间了:关于堆1+关于堆2上面的博客,思路较清楚,...原创 2021-04-07 17:20:04 · 111 阅读 · 0 评论 -
关于STL——篇2
目录1. map2.setdeque,list,vector对比STL算法1. map介绍:板子:#include<iostream>#include<cstdio>#include<cstring>#include<cmath>#include<vector>#include<algorithm>#include<map>#define ll long longusing namespace原创 2022-01-18 11:16:07 · 437 阅读 · 0 评论 -
关于STL——篇1
目录STL1. PairvectorSTLSTL大致可以分为3类:容器(container):可容纳各种数据类型的数据结构迭代器(iterator):可依次存取容器中元素的东西算法(algorithm):用来操作容器中元素的函数模板1. Pair——类似于只有两个关键字的结构体优点:排序时自动按第一个关键字先排序,相等时再看第二个关键字。例题解题思路先求出每个字符串的无序度,暴力N2N^2N2求,然后建一个pairpairpair数组qqq,第一关键字存无序度,原创 2022-01-17 16:46:54 · 390 阅读 · 0 评论 -
那群OJ们
比较有用的OJUSACOloj.acatcoder.jpdarkbzoj.tkCodeForcesUOJ已死comet OJOJ大全VJudge.net大佬学习笔记command_block’s blog比较推荐的翻译deepl.com转载 2022-01-14 14:39:54 · 95 阅读 · 0 评论 -
初赛知识点总结
目录科普知识类各种结构数学类算法类科普知识类ASCLL码是7位二进制编码CSP 分为 C S P − J “入门级”和 C S P − S “提高级”,分两轮进行运算符优先级》》博客(&的优先级比|高)算法不一定要在计算机上用某种语言实现高级语言相对于低级语言跟容易实现跨平台移植,高级语言可以用低层次硬件系统总线结构:f分为数据,地址,控制总线。PS:32条地址总线的存储空间为232=4GB2^32=4GB232=4GB8bit(位)=1byet8bi原创 2021-09-10 22:41:02 · 626 阅读 · 0 评论 -
【洛谷 P5787】二分图 线段树分治【二分图】【线段树分治】
解题思路题目大意:一张图有 n 个节点的图, 在 k 时间中会出现 m 条边,表示有一条连接 x,y 的边在 l 时刻出现 r 时刻消失,求问在第 i 个时间段中图是否为二分图。先对于二分图来分析:如果顶点 V 可分割为两个互不相交的子集 (A,B) ,并且图中的每条边 (i,j)所关联的两个顶点 i 和 j 分别属于这两个不同的顶点集 (i∈A,j∈B) ,则称图 G 为一个二分图。 —— 百度百科。在一般的做法中对于一个图是否为二分图,我们一般是采用染色法,如果一个图为二分图,那么一条边...原创 2021-08-18 16:27:20 · 308 阅读 · 0 评论 -
【洛谷 P3369】 普通平衡树【平衡树 Treap】
解题思路平衡树:利用BST性质查询和修改,利用随机和堆优先级来保持平衡,把树的深度控制在log N,保证了操作效率基本平衡树有以下几个比较重要的函数:新建,插入,删除,旋转节点的基本属性有val(值),dat(随机出来的优先级)通过增加属性,结合BST的性质可以达到一些效果,如size(子树大小,查询排名),cnt(每个节点包含的副本数)等由于每个操作用代码比较好介绍,这里就直接放代码介绍:int ch[maxn][2];//[i][0]代表i左儿子,[i][1]代表i右儿子新增节点...原创 2021-08-18 16:42:13 · 439 阅读 · 0 评论 -
关于期望的发现
前言感觉自己对期望一窍不通,做了几题,虽然还是不太懂,但感觉发现了点东西。。在一段东西后再加一个东西的期望除了直接算,还经常写成:E总E_{总}E总=E已知那段的期望+W当前价值P当前这个东西的概率\frac{E_{已知那段的期望}+W_{当前价值}}{P_{当前这个东西的概率}}P当前这个东西的概率E已知那段的期望+W当前价值针对这个,和fy手推了个数据,算是个例子:假设有三个数:2,3,5,选到的概率分别为:50%,40%,10%暴力解:则针对前两个数2,3,所有选择的方案*相应原创 2021-08-13 20:39:38 · 70 阅读 · 0 评论 -
AC自动机TOT
目录浅谈建树与插入构建fail边匹配查询CODE浅谈AC自动机是啥?是一个能够让你自动AC的算法哦,不,是一个关于字符串匹配的算法提到字符串匹配,大家应该都会想到KMP(既然来学AC自动机了,应该没有不知道的吧),如果你听说过KMP,你应该对一个模式串匹配一个文本串的问题了如指掌不过,对于多个模式串,好多好多个模式串呢?你也许会想到对每个模式串都KMP一遍,但直觉告诉你,这样是不可能AC的。于是,AC自动机就派上用场了当然,要学习AC自动机,你还需要掌握一种数据结构——Trie树整个AC原创 2021-08-11 21:55:17 · 122 阅读 · 0 评论 -
树链剖分【模板】
目录前言原题概念Part OnePart TowPart Three时间复杂度Code前言首先,在学树链剖分之前要先把 LCA、树形DP、DFS序 这三个知识点学了还有必备的 链式前向星、线段树 也要先学了。树链剖分 就是对一棵树分成几条链,把树形变为线性,减少处理难度需要处理的问题都有:将树从x到y结点最短路径上所有节点的值都加上z求树从x到y结点最短路径上所有节点的值之和将以x为根节点的子树内所有节点值都加上z求以x为根节点的子树内所有节点值之和原题》》题目概念思原创 2021-07-21 21:18:40 · 244 阅读 · 2 评论 -
乘法逆元【解法大全】
目录定义模板题法一法二法三应用定义若a∗x≡1(mod p)a*x≡1 (mod\;p)a∗x≡1(modp),且 aaa 与 ppp 互质,那么我们就能定义: xxx 为 aaa 的逆元,记为 a−1a^{-1}a−1,所以我们也可以称 xxx 为 aaa 的倒数( modmodmod ppp 意义下)。所以对于 ab mod p\frac{a}{b}\ \; mod\;pba modp ,我们就可以求出 b 在 mod pmod\; pmodp意义下的逆元,然后乘上原创 2021-07-20 20:21:13 · 1212 阅读 · 2 评论 -
扩展欧几里得
目录前言基本问题关于同余关于逆元其他前言什么是快乐星球?什么时候欧几里得??扩欧即是扩展欧几里得,是欧几里得算法的扩展算法。欧几里得算法是蛤?就是小学学过的辗转相除法。用于计算两个整数a,b的最大公约数。code:int gcd(int a,int b){ if(b==0)return a; return (b,a%b);}基本问题求解 ax+by=cax+by=cax+by=c 的所有整数解(a,b,ca,b,ca,b,c 都为整数)首先:要保证有整数解就必须有:gcd(原创 2021-07-20 20:02:37 · 476 阅读 · 1 评论 -
【洛谷 P3376】网络最大流【模板】【网络流Dinic】
解题思路学习网络流花了好久,看了无数博客,并总结,然后我真的真的懒得打一遍算法解析了,想学习网络流的按下放顺序自行浏览啦!!概念+EK算法 ——> Dinic(篇一)——>最大流—最小割定理最后推一篇超级长的》》网络流总结(没耐心看完了,但写的超好,有很多应用)代码#include<iostream>#include<cmath>#include<cstring>#include<cstdio>#include<...原创 2021-07-20 11:28:53 · 107 阅读 · 0 评论 -
【洛谷 P1495 】曹冲养猪【中国剩余定理(CRT)】【模板】
解题思路可以先参考看看》》中国剩余定理(CRT )(跳过前面的铺垫直接看解法)其实思路就是上面那个文章中的思路。首先,依题意得:x≡bi(modai)x≡b_i(mod a_i)x≡bi(modai)而这样的方程有很多,自然变成一个同余方差组。我们先举个解方程的例子,再带回题目中看:再将问题进行分解,看 x1x_1x1 如何求:我们可以先求出 同余方程xx1≡1(3),xx1≡0(5),xx1≡0(7)xx_1\equiv 1(3),xx_1\equiv 0( 5),xx_1\equ..原创 2021-07-19 19:53:55 · 140 阅读 · 0 评论 -
欧拉φ函数
定义111~ NNN中与 N 互质的数的个数叫欧拉函数,记为φ(N)φ ( N )φ(N)。对 N 分解质因数N=p1c1∗p1c1∗...∗pkckN=p_1^{c_1}*p_1^{c_1}*...*p_k^{c_k}N=p1c1∗p1c1∗...∗pkck则有 φ(N)=N∗(1−1p1)∗(1−1p2)∗...∗(1−1pk)\varphi(N)=N*(1-\frac{1}{p_1})*(1-\frac{1}{p_2})*...*(1-\frac{1}{p_k})φ(N)=N∗(1−原创 2021-07-19 17:27:27 · 258 阅读 · 0 评论 -
[2021暑]纪中划水记~~(持续更新)
前言昨天下午到的纪中,感叹了学校真的大,而且绝美,逛了逛校园,在食堂吃了个饭,那时候没想到今后会没饭吃。Day1非常非常爆炸的一天。。T1:暴力,结果挂了??就很迷T2:暴力,20分。一开始差点没看懂题T3:哈哈,不会T4:暴力yyds,可惜打挂了。只有20分,我枯了,被同年级的爷吊打了。改完后:T1:哈希T2:DPT3;依旧不会T4:最小覆盖链...原创 2021-07-12 20:52:12 · 104 阅读 · 0 评论 -
字符串&字符数组
目录字符串字符数组字符串一、用字符串来存储字符串string str1,str2; cin>>str1>>str2; //如输入“hello, world”则str1=”hello,” str2=”world” 可直接赋值: str1=str2; 二、相关函数(1) 字符串长度len = str1.length(); (2)字符串比较可以直接比较,即str1>str2;str1==str2;等 (3) 连接可以直接连接,即str1 += str2转载 2021-03-11 16:49:47 · 184 阅读 · 0 评论 -
【2021.1.24 八上】期末总结~~
目录浅谈DAY 1DAY 2感想计划成绩浅谈这次是期末考是五校联考 每次期末好像都是 不是全市的统考,没有某华等学校,稍稍放松了一些,但莫名感觉整个年级都超级重 视QWQ。。(考前听说某华期中考考了六科,巨多满分!!几个玩的好的也不是超级强的朋友,一个拿了生态园校区NO.1,一个拿了两个校区NO.1,还有个小学的同班同学,牛逼的5科AK!!然后我人都傻了,感觉自己这学期好像废了)。。提前一个月老师就开始催复习了,然后我乖乖的提前了复习的时间,现在看来确实没有一点效果,日常提前两小时写完作业 ,不太认原创 2021-01-24 16:19:35 · 1532 阅读 · 13 评论 -
矩阵乘法~~
矩阵乘法矩阵的相乘矩阵转置矩阵乘法的快速幂矩阵的相乘瞎吹吹由m行、n列的标量所构成的数组被称为一个m×nm×nm×n的矩阵(matrix)(matrix)(matrix)。一般用大写字母表示矩阵,对应的小写字母表示矩阵中的项(entry)(entry)(entry)。这里,aij就是矩阵A中第i行第j列的项。定义矩阵A,BA,BA,B。A和B可以作乘法操作当且仅当A的大小是a×ba×ba×b,B的大小是b×cb×cb×c,其中a,b,ca,b, ca,b,c皆为正整数。设矩阵C=ABC=ABC=原创 2020-12-12 12:06:36 · 827 阅读 · 0 评论 -
2020 CSPJ/S 游记(滚粗记)
目录浅谈第一轮提高组普及组第二轮提高组普及组感想浅谈自我感觉这一年没有特别大的进步,由于疫情的关系很长一段时间没有怎么学新的算法,在家自习的时候腐败比较严重,现在异常后悔。。8月份集训了很久,学到了很多新的东西,可惜没有全部吃透,刷题量不够,不会运用。。感觉时间过得超快,开始报名CSP的时候人都傻了,超级慌,第一轮提高组普及组第二轮提高组普及组感想...原创 2020-11-21 22:17:13 · 422 阅读 · 0 评论 -
【2020.11.13 八上】期中总结~~
目录浅谈DAY 1DAY 2感想计划浅谈闲话这次的期中考准备的非常匆忙,加上CSP J/S,和一些杂七杂八的机构测试,感觉时间上安排的不是很好。两个星期没上一节晚修,没写一课作业的蒟蒻在此瑟瑟发抖。。发现只剩一周备考的时候也不算特别慌(可能是因为AJ说他提前跟家长打好了预防针 天,我怎么会信AJ的XX话 ),就基本没有什么心态了。一直觉得年级里不在信奥班的那群巨爷肯定在复习,没报什么进年级前几的希望。后来发现,考前两周我们留校集训的时候,他们都去德育基地嗨了,也都没怎么复习,顿时失去了安慰自己原创 2020-11-14 11:28:16 · 237 阅读 · 4 评论 -
卡特兰(Catalan)数入门详解
目录基本概念实际问题基本概念介绍学卡特兰数我觉得可能比组合数要难一点,因为组合数可以很明确的告诉你那个公式是在干什么,而卡特兰数却像是在用大量例子来解释什么时卡特兰数这里,我对卡特兰数做一点自己的理解卡特兰数是一个在组合数学里经常出现的一个数列,它并没有一个具体的意义,却是一个十分常见的数学规律对卡特兰数的初步理解:有一些操作,这些操作有着一定的限制,如一种操作数不能超过另外一种操作数,或者两种操作不能有交集等,这些操作的合法操作顺序的数量为了区分组合数,这里用fn表示卡特兰数的第n转载 2020-10-04 15:03:06 · 1285 阅读 · 0 评论 -
各个排序算法(^_^)
排序图表:一、插入排序 每次将一个待排序的数据,跟前面已经有序的序列的数字一一比较找到自己合适的位置,插入到序列中,直到全部数据插入完成。二、希尔排序 先将整个待排元素序列分割成若干个子序列(由相隔某个“增量”的元素组成的)分别进行直接插入排序,然后依次缩减增量再进行排序,待整个序列中的元素基本有序(增量足够小)时,再对全体元素进行一次直接插入排序。由于希尔排序是对相隔若干距离的数据进行直接插入排序,因此可以形象的称希尔排序为“跳着插”三、冒泡排序通过交换使相邻的两个数变成小数在前大数在后转载 2020-09-17 16:49:01 · 153 阅读 · 0 评论 -
未完成任务(~ - ~)
模拟赛2020年8月23日提高组——捡金子2020年8月23日提高组——魔术算法——练习题洛谷 P3258P3258P3258 ——(RMQRMQRMQ&LCALCALCA)洛谷 P6374P6374P6374 ——(RMQRMQRMQ&LCALCALCA)洛谷 P3398P3398P3398 ——(RMQRMQRMQ&LCALCALCA)洛谷 P2880P2880P2880 ——(RMQRMQRMQ&LCALCALCA)SSLSSLSSL 28732原创 2020-08-24 16:25:31 · 236 阅读 · 3 评论 -
关于位运算的小知识~~
位运算(1)概念程序中的所有数在计算机内存中都是以二进制的形式储存的。位运算就是直接对整数在内存中的二进制位进行操作。比如,andandand运算本来是一个逻辑运算符,但整数与整数之间也可以进行andandand运算。举个例子,666的二进制是110110110,111111的二进制是101110111011,那么6and116 and 116and11的结果就是222,它是二进制对应位进行逻辑运算的结果(000表示FalseFalseFalse,111表示TrueTrueTrue,空位都当000处理)原创 2020-06-13 17:22:54 · 151 阅读 · 0 评论 -
【数学篇】论从一题四解到分式与整式
【数学篇】论从一题四解到分式与整式Like a sunrise ,getting better and better. 像日出一样,愈来愈好,所有的一切。————题记目录【数学篇】论从一题四解到分式与整式1.1.1.从 lowlowlow 解到秒解——化分式为整式2.2.2. 补 bugbugbug (请勿搜题)3.3.3.神解神解神解ing$$4.寒假的课程已经告以段落,但我仍感慨万...原创 2020-02-23 15:27:10 · 2017 阅读 · 2 评论 -
CSP-J 赛后总结
CSP-J赛后总结Like a sunrise ,getting better and better. 像日出一样,愈来愈好,所有的一切。————题记原洛古评测:T1T2T3T410050030悲惨的现实T1T2T3T40000这是一个血与泪的教训。。。哎,竟然手残到没有打cstdio头文件。。。原本可以二等...原创 2019-12-07 11:50:41 · 307 阅读 · 2 评论