![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
main
文章平均质量分 86
蜗角虚名羊
这个作者很懒,什么都没留下…
展开
-
51nod 1470 计算机网络问题
题目题解Solution一个边双连通分量一定可以找到一个不走重复边的环这个的话用两个之间一定存在至少两条没有公共边的路径可以得证所以双连通分量的所有点是可以随便两两到达的于是我们可以先来一发双连通缩点然后就变成了一个树差分一下Code#include<bits/stdc++.h>using namespace std;const int N=200001;st...转载 2018-10-24 15:05:23 · 206 阅读 · 0 评论 -
bzoj1078: [SCOI2008]斜堆
题目题解考虑斜堆中最后插入的那个结点,容易发现:(1)它一定是一个极左结点(就是从根往它的路上一直都是沿着左链走),因为插入的时候每次都是插入到左子树中;(2)它一定木有右子树,因为插入的时候每次都是把原来的某棵子树作为新结点的左子树;满足(1)(2)的结点可能有多个,但紧接着可以发现,这个斜堆中的每个结点如果木有左子结点,那么也木有右子结点(或者说,每个非叶结点都有左子树),而在插入...转载 2018-12-11 09:33:45 · 223 阅读 · 0 评论 -
51nod1440 迈克打电话
题目和阿狸的打字机很像,差不多的套路#include&lt;bits/stdc++.h&gt;using namespace std;#define mid ((l+r)&gt;&gt;1)const int N=200002,M=4000002;struct node{ int to,ne;}e[N];int l1[N],r1[N],l[N],r[N],tr[N][26],su...原创 2018-12-20 11:13:34 · 212 阅读 · 0 评论 -
神奇的题
洛谷IDE上一份代码把某些句子删掉测一下,再加回来,会使output改变#include<bits/stdc++.h>using namespace std;long long ans=0,t=0;char s[1001];int main(){// scanf("%s",s); gets(s);// cin>>ans; int l=strle...原创 2018-12-02 20:28:27 · 202 阅读 · 0 评论 -
绍兴一中模拟赛11.2——Alice的幸运数
原题Solution引理1:当n&gt;6n&gt;6n>6时全用andandand能使最小值为000111个andandand能使111的个数减半,而111个数最多323232个111,所以666个数能使111的个数为000引理2:xorxorxor操作能被andandand操作代替0^0=0;0&~0=00^1=1;0&~1=01^0=1;1...原创 2018-11-02 17:46:05 · 390 阅读 · 0 评论 -
POJ1177 Picture
题目 思路来自http://blog.csdn.net/littlewhite520/article/details/78091093题意:给n个矩形,求它们重叠后的周长 题解:用线段树的扫描线从下到上扫一遍,与面积并思想有些相似面积并,下面重边的处理相似,但是周长的并需要求的是竖边的个数然后乘以高度,而面积并求的是底边的长乘以高度,这里我们用了区间合并时的l和r结构体k...原创 2018-03-22 18:41:26 · 331 阅读 · 0 评论 -
bzoj4242: 水壶
题目题解Solution很明显的一点,这道题目就是要在网格图上面计算一个最小生成树,然后就变成了货车运输一样的做法,可以倍增或者是克鲁斯卡尔重构树。后面的部分就是原题,所以不再考虑,只考虑怎么样构造网格图最小生成树。我们对于每一个可行的起点一起bfsbfsbfs,对于每一个格子记录两个东西:一个记录距离当前位置最近的建筑的距离,以及是哪一个建筑。当你bfsbfs到某个格子的时候,发现这...转载 2018-11-01 17:15:41 · 219 阅读 · 0 评论 -
bzoj3174: [Tjoi2013]拯救小矮人
题目题解Solution考虑相邻的a和b若a.a+a.b<b.a+b.b则b应该在a之后逃跑大概这样理解就是如果只能通过一个,那么我无论怎么放都一样(后面是dp)如果可能通过俩,那么显然要把逃跑能力强的放在后面然后dp一下f[i]表示逃跑i个人后剩下的人梯最高的高度Code#include<bits/stdc++.h>using namespace std...转载 2018-11-01 08:15:15 · 190 阅读 · 0 评论 -
绍兴一中模拟赛10.20&10.27——tree1.0&2.0
Tree1.0Description选择起始点和终点以后,会每次等概率随机走到一个相邻的点(不能来回走同一条边多次),问最后走到终点的期望步数Solution统计下子树内和子树外的点分别作为起点和终点的贡献即可Code#include<bits/stdc++.h>using namespace std;typedef long long ll;const int N=...原创 2018-10-27 22:22:36 · 151 阅读 · 0 评论 -
绍兴一中模拟赛10.30——序列
题意:给出一个长度为n(n&lt;=100000)n(n&lt;=100000)n(n<=100000)的序列,有m(m&lt;=5)m(m&lt;=5)m(m<=5)次询问,每次询问有多少个长度∈[l2,r2]∈[l2,r2]∈[l2,r2]的区间,中位数大小∈[l1,r1]∈[l1,r1]∈[l1,r1]SolutionO(nmlogn)O(nm...原创 2018-10-30 16:47:10 · 193 阅读 · 0 评论 -
AT2377 Blue and Red Tree
题目题解Solution首先可以发现最终状态替换的红边和蓝边一定是重边。把这条边两端的联通块看成一个点。往回推,要形成这两个点,必须也要有类似的重边这样就可以得到一种做法。每次把重边两端的放入队列,并把边集合并(启发式合并),把这两个联通块合并再把重边放入,直至更新完成Code#include<bits/stdc++.h>using namespace std;#d...转载 2018-10-30 12:29:44 · 184 阅读 · 0 评论 -
绍兴一中模拟赛10.31——世界杯
题意:nnn个球队,每个球队有kkk个属性(属性值各不相同),aaa能胜bbb当且仅当aaa有至少一个属性大于bbb,求对于每个iii,前iii个球队中可能能获得冠军的球队个数Solution如果把aaa胜bbb当作aaa向bbb连一条有向边,缩点后,可以得到一条链,缩点后如果aaa向bbb连一条边,则说明aaa中每个属性最小值均大于bbb中对应最大值,每加入一个数,就合并一次Code#i...原创 2018-10-31 15:19:45 · 169 阅读 · 0 评论 -
洛谷P2024 [NOI2001]食物链
题目种类并查集#include&lt;bits/stdc++.h&gt;using namespace std;int op,x,y,n,m,i,v[150003],ans;int find(int x){ return v[x]==x?x:v[x]=find(v[x]);}int main(){ cin&gt;&gt;n&gt;&gt;m; for (i=1...原创 2018-12-11 14:26:00 · 159 阅读 · 1 评论