E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
BZOJ刷题记录
BZOJ
2186 [Sdoi2008]沙拉公主的困惑 - 筛法+线性求逆元
首先有一个很好玩的线性递推求逆元的方法:http://blog.csdn.net/whyorwhnt/article/details/19169035对于这道题,若设gcd(a,b)=1,则必然有gcd(a+kb,b)=1,因在modb系中,加b对于余数无影响。下面需要对此题证明一个结论,即:在1~n!中有phi(m!)n!m!个数与m!互质。首先phi即在m!范围内与m!互质的数,然后把它扩展到
x_1023
·
2020-09-16 00:46
筛法
其他数论相关
BZOJ
1880 [Sdoi2009]Elaxia的路线 - SPFA+拓扑排序
大家都说这是一道大水题。。。想打dyx应该了解到拓扑排序的功能,类比于食物链那道题,拓扑排序可以dp求出最长链。而在这道题只需求出可以重复的部分搞一个拓扑排序即可。而怎样求重复的部分呢?有一个思想很好:将一条线路拆分成起点到此的距离和终点到此的距离,跑两遍单源最短路,然后类似地枚举求出一些可以重复的路径,Topo一下就好了(尝试新代码风格2333,bz会卡空间,实测将边的数量开小一半就可以过了)#
x_1023
·
2020-09-16 00:46
Dijkstra/SPFA
拓扑排序
BZOJ
1045 [HAOI2008] 糖果传递 - 中位数
大概就是设第i个小朋友向第i+1个小朋友递了Xi个糖果,所以应该有以下方程:a1+xn−x1=averagea2+x1−x2=averagea3+x2−x3=average…an+xn−1−xn=average然后对于每一项,均和前面的式子相加,可以得到Xi关于Xn的关系式:xi=xn+i∗average−∑j=1iaj然后前缀和搞一搞求个中位数即可:#include#include#includ
x_1023
·
2020-09-16 00:46
其他数论相关
其他数论相关
BZOJ
2120 数颜色 - 带修莫队/树状数组套主席树+平衡树
大概是一道带修莫队的裸题,然而还是WA了无数次,真是太弱了......千万要记得带修的话前驱和后驱都要记录都要记录!要记录!记录!录!!#include#include#include#include#include#includeusingnamespacestd;constintmaxn=10005;constintmaxm=1000005;structquery{intid,l,r,t,bl
x_1023
·
2020-09-16 00:45
莫队
线段树/树状数组
树套树
可持久化数据结构
BZOJ
1130 [POI2008]POD Subdivision of Kingdom 状压
题意:链接方法:状压解析:N这么小的范围,看到就忍不住想要压一压--!先想想对半分的方案数。C13262大概500W吧挺小的。现在看我们的转移辣。如果O(n)的话是作死!所以如何降到O(1)呢?我们把每一个点的连向的点压成一个二进制数。然后转移我们就可以做到删去原来的加上新的。这个复杂度是O(1的个数)但是如果我们预处理出二进制数中1的个数,那么转移就O(1)辣,这题就可以水过去啦注意:预处理的话
wzq_QwQ
·
2020-09-16 00:13
Dynamic
Programming
BZOJ刷题录
c语言
poi
二进制
bzoj
-3211 花神游历各国
题意:给出长度为n的非负序列与m个操作;操作1查询区间和;操作2将区间内所有数字开方;题解:本以为是到神题推了一会,结果是个傻题==;总而言之就是10^9开五次平方就变成了1,就可以不再修改他;那么记录一个标记,表示这段区间是否还可以被开平方;线段树暴力搞就可以了,要开longlong;代码:#include#include#include#include#defineN100100#define
ww140142
·
2020-09-16 00:38
bzoj
数据结构
OIer刷题记录
bzoj
1997 [HNOI2010]平面图判定Plana
bzoj
1997[HNOI2010]平面图判定Planar链接
bzoj
luogu思路好像有很多种方法过去。我只说2-sat环上的边,要不在里面,要不在外边。
复杂的哈皮狗
·
2020-09-16 00:42
Leetcode
刷题记录
——56. 合并区间
算是贪心算法吧建立一个用于存储结构的res=[]我们首先按每个子区间的最小值将所有list排序,并将第0个list扔进res此后,我们对于排序后的第i个list(i>=1),和当前res中的最后一个进行比较比较的结果无非有2种:包含或部分重叠,此时返回二者合并后的区间不相交,返回空若为第一行的情况,我们返回二者合并后的区间并替换掉到res中的最后一个若为第二行的情况,我们返回空,并将这个list注
1996MZH
·
2020-09-16 00:04
leetcode
python编程技巧
leetcode 个人
刷题记录
(Python)
好久没做题了,数据结构和算法是不能丢下的,因此争取每天做一些题,保持思维和手感。第一周8.639.组合总和回溯+剪枝这里学到一个小技巧,把数组切片当作参数传进函数,这样就保证了递归下层选取是不比之前小的。其实就是之前C++写法的传指针。classSolution:defcombinationSum(self,candidates:List[int],target:int)->List[List[i
粽子小黑
·
2020-09-16 00:54
python
leetcode
bzoj
2754 ac自动机
第一道AC自动机题目。记一下对AC自动机的理解吧:AC自动机=Trie+KMP。即在Trie上应用KMP思想,实现多Pattern的匹配问题。复杂度是预处理O(segmalen(P)),匹配是O(len(T))。应该也是下界了。它预处理做了以下事情:1、建立所有Pattern的Trie2、计算出fail和last数组匹配时和KMP很像。我对fail和last的理解:对于一棵Trie,上面的一个节点
weixin_38166905
·
2020-09-16 00:14
c/c++
Bzoj
1997 [Hnoi2010]Planar题解
1997:[Hnoi2010]PlanarTimeLimit:10SecMemoryLimit:64MBSubmit:2224Solved:824[Submit][Status][Discuss]DescriptionInputOutputSampleInput26914151624252634353614253655122334455112345SampleOutputNOYESHINTSour
weixin_33860528
·
2020-09-16 00:39
数据结构与算法
bzoj
3940&&
bzoj
3942 Ac自动机||kpm算法
方法就是维护一个动态栈记录栈的每一位匹配到串的哪一位的编号第一道kmp第二道ac自动机自己理会#include#include#includeusingnamespacestd;constintM=1000055;charstack[M],s[M],t[M],f[M],next[M];intlen,top;voidgetfail(){for(inti=1;i#include#includeusin
weixin_33859844
·
2020-09-16 00:38
BZOJ
2716: [Violet 3]天使玩偶(KD-Tree)
DescriptionInputOutputSampleInput10010081232716525844242595342962581497509718643472255288937754567229086545689387861456972385758764534885427835347081252497974433938826827582219288967097291453642123584
weixin_30905133
·
2020-09-16 00:28
BZOJ
1997 [Hnoi2010]Planar 【2-sat】
题目链接
BZOJ
1997题解显然相交的两条边不能同时在圆的一侧,\(2-sat\)判一下就好了但这样边数是\(O(m^2)\)的,无法通过此题但是\(n\)很小,平面图边数上界为\(3n-6\),所以过大的
weixin_30949361
·
2020-09-16 00:57
bzoj
1997: [Hnoi2010]Planar
Description若能将无向图G=(V,E)画在平面上使得任意两条无重合顶点的边不相交,则称G是平面图。判定一个图是否为平面图的问题是图论中的一个重要问题。现在假设你要判定的是一类特殊的图,图中存在一个包含所有顶点的环,即存在哈密顿回路。输入格式:输入文件的第一行是一个正整数T,表示数据组数(每组数据描述一个需要判定的图)。接下来从输入文件第二行开始有T组数据,每组数据的第一行是用空格隔开的两
weixin_30894583
·
2020-09-16 00:24
BZOJ
3211【线段树】
题意:n个数,m个操作。1,L,R询问[L,R]的总和。2,L,R将区间所有数都开根号。思路:区间和简单。主要就是一个区间所有元素相同的标记Same,但是这样是不是要求太高?sqrt好像就算是1e9,也down的非常快到1了,且这里还没有区间加。so,只要考虑标记区间是否都是1/0就足够了。水题。#includeusingnamespacestd;typedeflonglongLL;constin
weixin_30871701
·
2020-09-16 00:24
bzoj
1130:[POI2008]POD Subdivision of Kingdom
传送门看到数据范围这么小,不由得算了一下暴力复杂度,算出来情况一共只有1e7,不多,再乘上暴力判断的复杂度,好像T了,判断的话位运算可以方便解决但是我写的优化似乎比较渣,还留了个log,但是还是n那么小,log可以忽略不计了吧代码:#include#include#include#includeusingnamespacestd;#definergregisterintn,m,a[27],f[27
weixin_30703911
·
2020-09-16 00:16
BZOJ
1997: [Hnoi2010]Planar
BZOJ
1997:[Hnoi2010]PlanarDescriptionInputOutputSampleInput26914151624252634353614253655122334455112345SampleOutputNOYES
weixin_30657541
·
2020-09-16 00:12
数据结构与算法
[分块]
BZOJ
4908 [BeiJing2017]开车
我们在车的地方加一在加油站减一这样答案就是一个类似绝对值的区间和的东西这个东西不好搞分块对于整块加减我们在块上再维护一个表示0的指针对于小块暴力基数排序重构复杂度O(nn√)#include#include#include#include#definepbpush_backusingnamespacestd;typedeflonglongll;inlinecharnc(){staticcharbu
里阿奴摩西
·
2020-09-15 23:00
分块
[并查集 杂题]
BZOJ
4452 [Cerc2015]Export Estimate
关键就是一个观察怎么判断是个环在维护并查集的时候顺便维护下size和度数为2的点的size#include#include#includeusingnamespacestd;inlinecharnc(){staticcharbuf[100000],*p1=buf,*p2=buf;returnp1==p2&&(p2=(p1=buf)+fread(buf,1,100000,stdin),p1==p2)
里阿奴摩西
·
2020-09-15 23:29
杂题
并查集
【
bzoj
1509】 NOI2003 逃学的小孩 树的直径
做以前的题感觉好水呀,第一想法是最短路,结果发现读错题了。后来想一下,只需要找到树的直径,然后从这两点求出到每个点的dis数组,然后枚举一下每一个点就可以了,这么水还调了这么长时间也真是颓废呀。#include#include#include#include#include#include#definemaxn210000#defineinf2000000010usingnamespacestd;
qingdaobaibai
·
2020-09-15 23:32
树
bzoj
1509[NOI2003] 逃学的小孩
题目链接:
bzoj
1509题目大意:给你一棵树。让你找三个点x,y,z。求从一个点x出发,先到另外两个点中距离x较近的点(设为)y,再到剩下的那个点z,的时间。
Euryale_
·
2020-09-15 23:39
树形dp
[
BZOJ
2716][Violet 3]天使玩偶 && kdtree
存模板#include#include#include#include#include#defineSFscanf#definePFprintf#definempmake_pair#definesqr(x)((x)*(x))#definemax(a,b)((a)>(b)?(a):(b))#definemin(a,b)((a)>1;nth_element(p+l,p+mid,p+r+1);t[mid
大蒟蒻syk
·
2020-09-15 23:18
kd树
[
BZOJ
5512][SAM]TJOI2019:甲苯先生和大中锋的字符串
BZOJ
5512放到SAM上统计right集合大小然后就完了Code:#includeusingnamespacestd;inlineintread(){intres=0,f=1;charch=getchar
romiqi_new
·
2020-09-15 23:44
SAM
LeetCode
刷题记录
(百度)
文章目录leetcode-215.数组中的第K个最大元素leetcode-206.反转链表leetcode-142.环形链表IIleetcode-94.二叉树的中序遍历leetcode-104.二叉树的最大深度leetcode-102.二叉树的层序遍历leetcode-69.x的平方根leetcode-5.最长回文子串leetcode-62.不同路径leetcode-53.最大子序和leetcod
六便士~
·
2020-09-15 23:39
LeetCode
BZOJ
1997——次小生成树(严格次小生成树)
传送门次小生成树什么的就不想讲了这儿有个神仙的讲解我只需要贴代码就是了#includeusingnamespacestd;#definelllonglonginlineintread(){charch=getchar();intres=0;while(!isdigit(ch))ch=getchar();while(isdigit(ch))res=(res=1=0;i--){if(del>=(1=0
Stargazer.
·
2020-09-15 23:05
【
BZOJ
1997】【HNOI2010】Planar
【题目链接】点击打开链接【思路要点】补档博客,无题解。【代码】#includeusingnamespacestd;#defineMAXN20005intf[MAXN],x[MAXN],y[MAXN],home[MAXN],value[MAXN];boolcircle[MAXN];intF(intx){if(f[x]==x)returnx;elsereturnf[x]=F(f[x]);}intmai
cz_xuyixuan
·
2020-09-15 23:30
【OJ】BZOJ
【类型】做题记录
【算法】2-SAT
【算法】平面图相关
[
BZOJ
3942 ]KMP+栈 [
BZOJ
3940]AC自动机+栈
BZOJ
3942分析:一个个匹配,不过中途记录一下当前的fail,这样的话删除一部分,也可以回溯到那时的状态/**********************************************
qq_37383726
·
2020-09-15 23:12
AC-
自动机
KMP
bzoj
1559: [JSOI2009]密码 AC自动机+状压dp
题意给出n个字符串,求有多少个长度为L的字符串满足每个字符串出现至少一次。字符串仅由小写字母组成。若方案书=52,所以这必然是由n个字符串通过某种排列顺序紧凑排列后得到的。那么我们只要枚举字符串的排列顺序后按照字典序输出即可。代码#include#include#include#include#include#includeusingnamespacestd;typedeflonglongLL;i
SFN1036
·
2020-09-15 23:47
状压dp
AC自动机
【
BZOJ
2759】一道动态树的好题
2759:一个动态树好题TimeLimit:10SecMemoryLimit:128MBDescription有N个未知数x[1..n]和N个等式组成的同余方程组:x[i]=k[i]*x[p[i]]+b[i]mod10007其中,k[i],b[i],x[i]∈[0,10007)∩Z你要应付Q个事务,每个是两种情况之一:一.询问当前x[a]的解Aa无解输出-1x[a]有多解输出-2否则输出x[a]二
_傲寒
·
2020-09-15 23:09
【
BZOJ
3326】数数 数学题
3326:[Scoi2013]数数TimeLimit:1SecMemoryLimit:64MBDescriptionFish是一条生活在海里的鱼,有一天他很无聊,就开始数数玩。他数数玩的具体规则是:1.确定数数的进制B2.确定一个数数的区间[L,R]3.对于[L,R]间的每一个数,把该数视为一个字符串,列出该字符串的每一个(连续的)子串对应的B进制数的值。4.对所有列出的数求和。现在Fish数了一
_傲寒
·
2020-09-15 23:09
数学
【NOIP2015】【
BZOJ
4326】运输计划
4326:NOIP2015运输计划TimeLimit:20SecMemoryLimit:128MBSubmit:30Solved:18[Submit][Status][Discuss]Description公元2044年,人类进入了宇宙纪元。L国有n个星球,还有n−1条双向航道,每条航道建立在两个星球之间,这n−1条航道连通了L国的所有星球。小P掌管一家物流公司,该公司有很多个运输计划,每个运输计
_傲寒
·
2020-09-15 23:09
【
BZOJ
1556】墓地秘密 DP
Description费尽周折,终于将众将士的残骸运送到了KD军事基地地底层的大型墓地入口。KD的伙伴和战友们都参加了这次重大的送葬仪式。右边是一扇敞开的大门,进去便是墓地了,左边是一堵凹进去的墙,没有什么特别的地方。部队缓缓进入右边的门,一切。。。就这么结束了么。。。。。此时,F却没有跟上队伍,在一般MM都会有的强烈的第六感之下,她来到了左边这堵墙前一探究竟。扫去了重重的灰尘之后,墙上一块凹进去
_傲寒
·
2020-09-15 23:09
[
BZOJ
1509][NOI 2003]逃学的小孩(树的直径)
题目链接http://www.lydsy.com/JudgeOnline/problem.php?id=1509题目大意要从一棵树中找出三个点X,Y,Z,使得min(dis[A][C],dis[B][C])+dis[A][B]最大,求这个最大值思路大部分的做法都是基于枚举分叉点的树上DP。这种做法非常好想,但是还是有些难写。实际上可以发现,min里头的两个东西具体取哪个并不重要,或者说点C距离A更
我是傻叉
·
2020-09-15 23:48
BZOJ
图论
NOI
传统题
【
BZOJ
1977】次小生成树 Tree
1977:[BeiJing2010组队]次小生成树TreeTimeLimit:10SecMemoryLimit:512MBSubmit:3916Solved:1133Description小C最近学了很多最小生成树的算法,Prim算法、Kurskal算法、消圈算法等等。正当小C洋洋得意之时,小P又来泼小C冷水了。小P说,让小C求出一个无向图的次小生成树,而且这个次小生成树还得是严格次小的,也就是说
sszxzzh
·
2020-09-15 23:07
次小生成树
BZOJ
BZOJ
1997: [Hnoi2010]Planar
07年的论文里有关于平面图判定的但是那个代码好像要300多行(听说12年WC的时候clj写出来了%%%%%%%%%%%)不过既然存在哈密尔顿回路,那么当然要用特殊的做法啦首先把哈密尔顿圈画出来然后不在圈上的边要么在圈内要么在圈外如果有两条边在圈内相交了,那么他们肯定是一个在圈内一个在圈外所以是个2-SAT问题(直接套Tarjan就好了)然后因为我比较懒就写了个并查集水一水了#include#inc
nlj1999
·
2020-09-15 23:37
并查集
2-SAT
BZOJ
1509: [NOI2003]逃学的小孩
傻逼树形DP,WA了半天QAQ。一直在写脑残的讨论方法,后来想通了直接枚举三条连线的交点,然后求出从以一个点为根的树中距根前三长的路径,最长+2*次长+第三长就是这个点为分叉点的答案,同时这些路径仅在根处相交,这个很好维护的,不过由于我比较脑残(T_T),就直接排序了,于是变成了nlogn,其实可以O(n)的。#include#include#include#include#include#inc
nlj1999
·
2020-09-15 23:37
动态规划
BZOJ
2780 后缀自动机
由于是英文题,简要解释一下题目。开始给出n个子串,和m个询问,对于每个询问读入一个子串,询问n个子串中,有多少个子串包含所询问的子串。实在看不懂的可以从样例中意会一下。#include#include#include#include#include#includeusingnamespacestd;constintmaxn=505000;intn,m,cnt,tot,len,ans[maxn];c
magic_sheep
·
2020-09-15 22:53
后缀自动机
bzoj
3211: 花神游历各国 树状数组
注意到任意一个正数经过不超过5次操作就变成1,之后就不变了;0经过永远不变。那么可以用一个链表来表示某一个数之后的第一个>1的数,然后用并查集来合并即可。AC代码如下:#include#include#include#include#defineN100005#definelllonglongusingnamespacestd;intn,m,a[N],fa[N];llc[N];intread(){
lych_cys
·
2020-09-15 22:46
bzoj
bzoj
1997
题目链接:
bzoj
1997题意:给你一个包含所有点的哈密尔顿回路的图,判断是否是平面图。n3*n-6,这一定不是平面图。这样我们就能解决这个问题了。
ljyloi
·
2020-09-15 22:39
bzoj
BZOJ
1997: [Hnoi2010]Planar 平面图判定,TWOSAT
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1997题意:给定一个图和一个哈密顿回路,判定是否是平台图。解法:用平面图musingnamespacestd;constintmaxn=10005;intT,n,m,dfs_clk,top,scc,edgecnt;intu[maxn],v[maxn],c[maxn],pos[maxn];in
just_sort
·
2020-09-15 22:15
ACM/ICPC_
BZOJ
bzoj
1997 [Hnoi2010]Planar 2-SAT
Description若能将无向图G=(V,E)画在平面上使得任意两条无重合顶点的边不相交,则称G是平面图。判定一个图是否为平面图的问题是图论中的一个重要问题。现在假设你要判定的是一类特殊的图,图中存在一个包含所有顶点的环,即存在哈密顿回路。Solution考虑把哈密顿路径画成一个圈,那么剩下的路径要么在圆外要么在圆内。问题变成求是否存在一种方案使得所有边不相交这是一个很经典的2-SAT模型,对于
olahiuj
·
2020-09-15 22:14
c++
2-SAT
【
BZOJ
1195】【HNOI2006】最短母串(AC自动机,状压,BFS)
DescriptionclickmeSolution考虑建出所有串的AC自动机,然后直接在AC自动机上进行广搜,队列的每个元素存下已经包含了哪几个串(状压)、队列中的前驱元素位置,BFS可以保证字典序最小。菜得KJ的我居然调了一个晚上?!果然太菜了。。。Source/*************************************************Au:Hany01*Date:Ma
Hany01
·
2020-09-15 22:16
BZOJ
省选
AC自动机
状压
BFS
bzoj
3211花神游历各国
DescriptionInputOutput每次x=1时,每行一个整数,表示这次旅行的开心度SampleInput41100555112212112223114SampleOutput1011111HINT对于100%的数据,n≤100000,m≤200000,data[i]非负且小于10^9SourceSPOJ2713gss4数据已加强看了好几道并查集的题都不会都说是和这道题一模一样那么我们来看
doge233
·
2020-09-15 22:24
并查集实现
暴力
数据结构
想法
bzoj
3211
分析一下,每个数最多只会做5次开根操作就会小于或等于1,在这之后它的值就不会改变。。。用线段树记录区间的最大值,然后只对max>1的区间做开根操作即可。时间复杂度:O(M∗logN+N)#include#include#include#include#include#include#include#include#include#include#includetemplatevoidread(Nu
::Dash::
·
2020-09-15 22:48
bzoj
bzoj
1997: [Hnoi2010]Planar (2-SAT)
1997:[Hnoi2010]PlanarTimeLimit:10SecMemoryLimit:64MBSubmit:1739Solved:659[Submit][Status][Discuss]DescriptionInputOutputSampleInput26914151624252634353614253655122334455112345SampleOutputNOYESHINTSour
clover_hxy
·
2020-09-15 22:10
图论
BZOJ
1997: [Hnoi2010]Planar 2-SAT
$\rightarrow$戳我进
BZOJ
原题[Hnoi2010]PlanarTimeLimit:10SecMemoryLimit:64MBDescriptionInputOutputSampleInput26914151624252634353614253655122334455112345SampleOutputNOYESSourceDay1
ayf1988
·
2020-09-15 22:59
数据结构与算法
[
bzoj
3211]花神游历各国
Description写一个数据结构兹瓷区间求和和区间开方。n#include#include#include#definefo(i,a,b)for(inti=a;im)change(v*2+1,m+1,r,x,y);elsechange(v*2,l,m,x,m),change(v*2+1,m+1,r,m+1,y);t[v]=merge(t[v*2],t[v*2+1]);}llfind(intv,
alan_cty
·
2020-09-15 22:15
树状数组
线段树
并查集
BZOJ
1997: [Hnoi2010]Planar(洛谷P3209)
2-SAT平面图
BZOJ
题目传送门洛谷题目传送门首先根据平面图的性质,如果m>n∗3−6,那么这个图一定不是平面图。这样我们就可以把边数缩至n级别的了。
forezxl
·
2020-09-15 22:59
洛谷
BZOJ
图论---2-SAT
蒟蒻zxl的Blog专栏
平面图
2-SAT
BZOJ
洛谷
【
BZOJ
3707】圈地 计算几何 旋转坐标系
链接:#includeintmain(){puts("转载请注明出处[辗转山河弋流歌by空灰冰魂]谢谢");puts("网址:blog.csdn.net/vmurder/article/details/46608743");}题解:对于一个点对,如果它的连线的方程的x为定值,即为一条竖线,那么我可以把所有点以x为第一键值,y为第二键值排序,然后这条线两端的第一个点与这条线段做个三角形,其面积都可能
空灰冰魂
·
2020-09-15 22:47
计算几何
旋转坐标系
上一页
29
30
31
32
33
34
35
36
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他