Tgotp的博客

蒟蒻...

Problem B: Pow

c++代码如下: #include<bits/stdc++.h> #define rep(i,x,y) for(register int i = x ; i <= y ;++ i) #define repd(i,x,y) fo...

2018-03-30 18:58:38

阅读数:34

评论数:0

Problem A: Bird

考虑到集训篇题目有点少。 我再写两篇QAQ emmm一开始没有想法,甚至连暴力都不知道…最后交了一个40分傻逼费用流… 正解:首先肯定能发现如果对于一条边,正着跑了一次,反着跑了一次,那么这两次其实可以抵消掉(实际就费用流的思想) 考虑到树高实际只有log,那么用f[i]表示i的子树到i...

2018-03-30 16:19:19

阅读数:17

评论数:0

Problem B: 平行

Problem B: 平行 Special Judge Time Limit: 1000 ms Memory Limit: 512 MB Submit Solution Description 【题目描述】 二维直角坐标系中有N个点,它们的横、纵坐标的绝对值都不超过10。 一次...

2018-03-29 21:19:48

阅读数:22

评论数:0

1152: [CTSC2006]歌唱王国Singleland

这两题很类似,看看上面题解即可 c++代码如下: #include<bits/stdc++.h> #define rep(i,x,y) for(register int i = x ;i <= y;++ i) #define...

2018-03-29 16:26:34

阅读数:177

评论数:1

1072: [SCOI2007]排列perm

随便暴力就能ac? c++代码如下: #include<bits/stdc++.h> #define rep(i,x,y) for(register int i = x; i <= y; ++ i) using namespac...

2018-03-27 20:49:07

阅读数:19

评论数:0

2395: [Balkan 2011]Timeismoney

推荐一篇炒鸡强的blog 好就这样…不想写其他的,看这个就ojbk了 c++代码如下: #include<bits/stdc++.h> #define rep(i,x,y) for(register int i = x; i &lt...

2018-03-27 20:01:54

阅读数:18

评论数:0

2882: 工艺

显然看到题第一反应sam /sa瞎搞搞。。。 然后看到数据范围,发现值域过大… 其实也无所谓…套个map,多个log搞定。。。 当然其实可以用 最小表示法 (O(n)). (我不会orz) c++代码如下: #include<bits/stdc++.h&am...

2018-03-27 18:44:11

阅读数:33

评论数:0

4444: [Scoi2015]国旗计划

破环为链… 然后求出每个边最优情况下右边的边。 然后倍增贪心即可… c++代码如下: #include<bits/stdc++.h> #define lowbit(x) (x & -x) #define rep(i,x,y...

2018-03-27 15:10:14

阅读数:27

评论数:0

1563: [NOI2009]诗人小G

估计只有我这种蒟蒻才写了颗线段树吧… 容易找到n^2 dp方法: 即f[i] = min(|sum[i] - sum[j] - l + i - j - 1|^p) 然后令k > j且k优于j,简单思考得到… 若k当前已经优于j,那么以后一定会一直优于j 所以该方程满...

2018-03-27 10:33:36

阅读数:77

评论数:0

2095: [Poi2010]Bridges

混合图的欧拉回路一般解法: 二分 + 最大流 先二分,然后判断该图是否能构成欧拉回路 考虑欧拉回路的成立条件,入度等于出度 也就是说,对于有向边,只用考虑其对入度出度的贡献, 然后对于无向边就要考虑其方向… 那么先任意规定无向边的方向,然后跑最大流。 在满足没有点出入度为0或出入度差...

2018-03-23 18:56:09

阅读数:29

评论数:0

记一场(伪)CF (Educational Codeforces Round 40 (Rated for Div. 2) )

实际上是div2场… 考了半个多小时才想起来有这个比赛… 然后就看了看…(英语太菜了,十几二十分钟才能看懂一题) 只写了 D E F G(其中只有D E是考中写完的…) D: 题目大意 : 求有多少不直接相交的点对,并且这个点对连上以后不能改变s- > t的最短...

2018-03-22 19:56:20

阅读数:27

评论数:0

2618: [Cqoi2006]凸多边形

半平面交裸题,即便如此本辣鸡还是调试了一上午… 因为是求所有图形的交,那么直接把每个图形都拆成一堆直线, 相当于每次切一刀,留下左边的,然后求最后面积 c++代码如下: #include<bits/stdc++.h> #define eps 1e...

2018-03-22 11:37:33

阅读数:29

评论数:0

4503: 两个串

将s2串倒过来,把?看成0,很容易把式子化成f[i] = ∑(s1[i] - s2[len2+i-j]))^2*s2[len2+i-j]然后展开得到俩个卷积与一个常数,然后上fft即可c++代码如下:#include<bits/stdc++.h> #de...

2018-03-15 16:35:38

阅读数:28

评论数:0

#34. 多项式乘法

UOJ的FFT板子我分别写了fft 与 ntt...ntt与fft的差别仅在于复数运算这一块...FFT代码如下:#include<bits/stdc++.h> #define PI acos(-1) #define rep(i,x,y) for(reg...

2018-03-15 08:04:23

阅读数:56

评论数:0

4025: 二分图

考虑二分图的判定就是看图内是否有奇环...因为存在一条公共边的两个偶环还是会构成一个偶环,那么用lct维护以时间为权值的最大生成树,这样可以保证如果有奇环,一定是和树上的边构成的...然后注意一下细节就好了...(↑这傻逼调了一天)c++代码如下:#include<bits/...

2018-03-12 16:35:29

阅读数:47

评论数:0

2286: [Sdoi2011]消耗战

考虑到删除某个点的最小值就是根到该节点的边的最小值。然后可以先dfs一遍求出该值,然后考虑对于两个点,删除的价值就是min(dis[x]+dis[y],dis[lca])所以可以用虚树处理,然后在虚树上dp即可...c++代码如下:#include<bits/stdc++.h...

2018-03-12 09:42:14

阅读数:32

评论数:0

2705: [SDOI2012]Longge的问题

考虑把式子化成然后就可以枚举n的因子,然后求出其欧拉函数值即可.c++代码如下:#include<bits/stdc++.h> #define rep(i,x,y) for(register int i = x ; i <= y ;...

2018-03-12 08:36:27

阅读数:53

评论数:0

4195: [Noi2015]程序自动分析

一道大水题看到题目一开始的描述容易想到查分约束...但是再看两眼发现并没有必要。。。显然并查集就可以维护。对于相同的点合并成一个点即可,把不同的点并在一个集合,每次判断就好了...另外,考虑数据范围过大,必须使用离散化...c++代码如下:#include<bits/stdc...

2018-03-11 21:14:30

阅读数:85

评论数:0

2565: 最长双回文串

老年稳退役选手...一道水题调试了半个小时...容易想到manancher处理回文串。就联想到该题每一个点,该点作为一个回文串的左右端点最长的长度。然后正向扫一遍即可.c++代码如下:#include<bits/stdc++.h> #define rep...

2018-03-11 21:11:54

阅读数:68

评论数:0

3669: [Noi2014]魔法森林

两种方法,一种SPFA动态加边,一种lct维护最小生成树...但是思路大致一样,考虑枚举其中一种值,比如a,然后用b的值做最小生成树,然后找到1到n之间的这条链的最大值即为答案c++代码如下:1.SPFA动态加边:#include<bits/stdc++.h&...

2018-03-10 19:37:48

阅读数:40

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭