自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

LiRewriter的博客

一个蒟蒻咸鱼OIer的博客

  • 博客(11)
  • 收藏
  • 关注

原创 一个诗人的一生——诗人小G的人生

看到群里有人说周末作文是以一个诗人的一生为题写作文…于是就突发脑洞写了这么个东西。 哇发出来好羞耻啊(x诗与人生某一天,在某一个地方,小G诞生了。 小G原本是有自己的名字的,但是在某一天之后,他就改名叫做小G了。没有人知道为什么,也没有人在意。 小G喜欢写诗。他喜欢自己的诗心在无边的美景中徜徉,喜欢盯着周遭的事物。人们都说他痴了,没有救了。 春日花开的时候,他会踏足在杨柳岸边,细细盯着一片片

2017-12-23 23:38:21 903

原创 平衡树学习笔记(1) BST

BST,二叉排序树。这个东西应该算是联赛算法?然而我一直没有学orz。 于是我就调了一天。。真菜啊我 BST的原理很简单,保证中序遍历是有序的,我们称之为BST性质。存储为了方便之后的操作,这里我们用结构体来实现struct node{ int son[2], fa, size, val; //son[0]为左儿子,son[1] 为右儿子}a[100003];遍历inline void

2017-12-23 18:04:47 335

原创 分块(一) 分块的思想与基础功能实现

其实分块是什么东西很清楚的。 一个数列进行操作是O(mn)O(mn)的,那么每n√\sqrt n个分成一段,共分成n√\sqrt n段,然后我们操作时,对于在一段内的直接单点暴力修改,跨段部分按段转移,这样每次操作复杂度就降成了O(n√)O( \sqrt n)。 非常简单的思想,糟心的是如何实现。建块首先我们先求出块的数目bct = (int)sqrt(n) 然后用block数组记录某一个元素

2017-12-17 17:13:32 1003

原创 codeforces898D Alarmclock

有些类似线段覆盖的贪心。蛮巧妙的。题意大概是这样的, 有nn个闹钟,第ii个会在第aia_i时刻开始叫mm分钟,如果在某一段区间[L,L+m][L, L + m]有超过kk个闹钟响小明就会被吵醒,求最少关掉多少闹钟会使得小明不被吵醒,并且在区间外开始响的闹钟不计入区间中。 1 ≤ k ≤ n ≤ 2⋅1051 ≤ k ≤ n ≤ 2·10^5, 1 ≤ ai,m ≤ 1061 ≤ a_i, m

2017-12-17 00:26:39 337

原创 codeforces895C Square Subsets

什么,这是状压DP??? 是在下输了…输的心服口服… ABC都是好题啊…前排提醒,由于latex没有^这个符号,所以用⨁\bigoplus 代替 首先看看数据范围,70这个玄学范围,emmm… 理性分析查找题解一波,我们想起来要的是完全平方数,那么就可以搞一些大新闻: 用dp[i][j]dp[i][j]表示前ii个数达到状态jj的情况有多少种,这里的状态jj表示某一个因子有奇数个还是偶数个

2017-12-16 00:52:38 385

原创 codeforces895B XK segments

蛮有趣的一道题。 先来说说题意,大概是:对一个数组a,定义符合条件的二元组(i,j)(i, j)表示恰好存在kk个整数,满足ai≤y≤aja_i \leq y \leq a_j且yy为xx的倍数,求符合条件的二元组数量。一上来有些懵逼,不妨先找找规律。 我们知道,假定存在kk个这样的整数,那么首先[L,L+(k−1)∗x][L, L + (k - 1) * x]一定是符合条件的一个区间,然后考虑

2017-12-15 22:45:16 273

原创 codeforces895A Pizza Seperation

Div2的T1出这个真的好吗… 思考余地很大的一道题。来说说题意吧。有一个和为360的环形数列,将其分成两半使得差最小。一个直观的做法是滚动n次,然后我们可以预处理一个前缀和,并从前往后扫一遍,这样可以过掉这道题,复杂度是O(n2)O(n^2)的。但这个复杂度显然不能让我们满意。 于是作者给出了一个很有趣的做法: 首先明确一点,对于一个环形数列来说,将之展开之后,分成两部分,一定有一部分是处于

2017-12-14 22:34:07 184

原创 网络流(三) 最小割 平面图转对偶图

嗯,将两个放在一起的原因…只是因为单另分开篇幅不够罢。 绝对不是因为例题只有BZOJ1001什么的最小割最大流定理搜了一圈没有找到什么是最小割,然后懵逼了。 嗯…… 首先,什么是割?其实,割=割边=去掉以后使图不连通的边的集合 然后,容量和最少的割集称为最小割。 对于割,有这样一个重要定理: 最小割=最大流嗯,最小割就这么多东西。 为什么正确?这里给出一种直观的想法 (原PO:h

2017-12-10 13:39:09 2178

原创 网络流(二) 最大流算法的实现

嗯接着前篇…有了前面的原理铺垫,接下来的可能会简单一些…? FF看见烦,SAP不想学。 所以只剩下EK和Dinic了。 模板题:luogu3376Edmond-Karp算法基本上上把EK的queue改成stack就成了FF,所以这里不讨论FF的问题。 先贴代码,然后再说一说其含义。#include <bits/stdc++.h>using namespace std;#define MA

2017-12-10 00:00:25 3073 1

原创 网络流 (一) 最大流的原理图解

嗯…于是学一波网络流罢 之前学过一波,不过失败了orz 希望这次能学成功(x)建模想象一下,你在调度货车运输(不是最小生成树+LCA那道题放心吧),但是有些桥是有载重限制的。比如下图: 绿色的边表示桥,上面的数字表示载重。 老板打算从A到G。 显然,作为一个老板,超载是不合适的,姑且不论货物安全,还有可能受到法律惩罚!那么,最多能一次载多少货物呢?在解决这个问题之前,我们先为这一模型定

2017-12-09 15:09:52 19902 10

原创 空间向量的应用

其实这个是计算几何哒! 文化课真好.jpg 好吧其实是单纯的发现老师没讲点线距和线线距有些好奇而已定性分析线面平行在面上找两条不共线的向量,如果该线能用这两个向量线性表示,则线面平行。 a→∈α,b→∈α,a→≠kb→,l→=λa→+μb→⇒l→//α\overrightarrow a \in \alpha, \overrightarrow b \in \alpha, \overrightar

2017-12-02 15:09:30 2423

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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