自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

sckalrter的博客

待て、しかして希望せよ

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

原创 估计要退役了吧。

很难过吧。。。考得完爆了。。。。。。。。。其实也没什么可以说的。。。都是蒟蒻的借口罢了。。。。。。自己果然还只是半吊子水平呢。。。。。。。祝大家都能进省队。。。其实只要不要有遗憾就好了呢。。。虽然我很遗憾或许不能走下去了。。。。。886...

2018-11-13 10:53:56 273 1

原创 BZOJ2792: [Poi2012]Well

题目大意:给n个数,每个数可以减去一个非负整数,总修改代价为所有这些非负整数的和,求总代价在m之内且至少有一个数修改为0,max{|Xi - Xi+1|}的最小值。题解:考虑二分最小值,对于每个数求出最小代价。但这样不保证会有数为0。考虑枚举0的位置,这样一定会在左右分别形成一个等差数列,发现两个等差数列的端点都单调,所以我们双指针扫一遍就可以了。代码:#include<bit...

2018-10-25 13:26:22 145

原创 BZOJ2801: [Poi2012]Minimalist Security

题目大意:一张n个点m条边的无向图,有点权有边权都是非负,且每条边的权值小于等于两个顶点的权值和,现在要将每个点减一个非负整数使得每条边权等于两个顶点的点权和,问最大修改代价和最小修改代价题解:每一个连通块如果确定了一个点的值,那么所有其他点的权值就都确定了。那么我们dfs每个联通块,随便设一个点为x,那联通块内每个点的值都可以用x表示出来,顺便x有个范围,若范围不存在就NIE不然就是个一...

2018-10-25 13:15:54 187

原创 BZOJ3836 [Poi2014]Tourism

简要题意:给定一个n个点,m条边的无向图,其中你在第i个点建立旅游站点的费用为Ci。在这张图中,任意两点间不存在节点数超过10的简单路径。请找到一种费用最小的建立旅游站点的方案,使得每个点要么建立了旅游站点,要么与它有边直接相连的点里至少有一个点建立了旅游站点。题解:根据dfs搜索树进行树DP。对一个点的影响不仅有它的儿子,还有它的祖先。对每一个独立的联通块DP,令f[i][s]表示在d...

2018-10-25 13:04:26 191

原创 BZOJ2802: [Poi2012]Warehouse Store

日常刷水…简单贪心,考虑用一个堆维护已选的客人,若能选则选,不能就取堆中购物数最多的客人不取,取当前客人即可。用了pdds还是好慢啊TAT。代码:#include<bits/stdc++.h>#include<ext/pb_ds/priority_queue.hpp>#define mp make_pairusing namespace std;typede...

2018-10-01 21:03:15 172

原创 BZOJ3069: [Pa2011]Hard Choice 艰难的选择

第一眼感觉是LCT维护动态SCC…想想感觉太码了,于是yy了个思路清奇的做法。考虑离线询问这样删边就变成了加边。考虑求出原图的生成树,然后每当加入一条边,就只要把树上两点路径间边权全部加一。然后若两点间边权全部>=2则说明每条边都至少在一个环上,两点间路径不止一条,答案为TAK否则为NIE。然后我们发现若求出的是任意生成树,可能造成“与当前不在生成树上的边形成环”的情况,我们只要求...

2018-09-29 09:19:54 277

原创 BZOJ4310: 跳蚤

二分+后缀数组。验证时贪心去验证,能不选尽量不选,这个东西可以求两后缀的LCP然后去判断就可以了。后缀自动机党怎么能写后缀数组真香。代码/**************************************************************    Problem: 4310    U...

2018-09-23 21:35:06 297

原创 BZOJ3514: Codechef MARCH14 GERALD07加强版

乱搞好题。。。考虑加入一条边,如果生成环,那么把环上最早加入的边删去,答案就是用n-(编号在l到r的边中删去的边的编号在1到l中的边)。证明的话,yy一下吧。想到这你可以激动的去写一发树上倍增,突然发现无法处理边被替换怎么办?上LCT。作为一名(并不)熟练的NOIP选手,LCT+主席树这种东西要在1小时1天内写完。代码:/********************************...

2018-09-23 21:27:06 98

原创 BZOJ1367: [Baltic2004]sequence

感觉非常神仙的一道题。 假设读入数组为A,所求数组为B。 我们先假设B中元素可以相同。 考虑如果A是一个单调上升的序列,我们直接取它本身就可以了。 如果A单调下降,那么B中每一位都显然是它的中位数。 那我们不妨把A中单调上升的区间拆成一个个单独的点,这样A就变成了若干下降的区间。 考虑用左偏树维护中位数。 不停加入A中每一个数作为一个堆,如果它前面的堆中位...

2018-09-13 18:49:46 153

原创 BZOJ3879: SvT

两子串的最长公共后缀就是在后缀树上他们的LCA的最长长度。 考虑将原串翻转,公共前缀变公共后缀。 建出原串后缀自动机,然后建出后缀树。 对于每次询问,我们建出其虚树,在虚树上DP即可。 注意到模数太大超过最大可能答案,我们不必取模。代码#include<bits/stdc++.h>using namespace std;typedef long long ll;...

2018-09-07 19:18:00 209

原创 BZOJ4516: [Sdoi2016]生成魔咒

题意:给定n个将字符插至字符串尾的操作,求每次操作后本质不同的子串数。 题解: 一看“本质不同的子串”就知道是SAM啦,在建自动机时维护ans即可,注意数的值域过大要使用map。#include<bits/stdc++.h>using namespace std;typedef long long ll;int read(){ int x=0,f=1; ch...

2018-07-24 16:14:44 122

原创 BZOJ3545: [ONTAK2010]Peaks

Description 在Bytemountains有N座山峰,每座山峰有他的高度h_i。有些山峰之间有双向道路相连,共M条路径,每条路径有一个困难值,这个值越大表示越难走,现在有Q组询问,每组询问询问从点v开始只经过困难值小于等于x的路径所能到达的山峰中第k高的山峰,如果无解输出-1。 Input 第一行三个数N,M,Q。 第二行N个数,第i个数为h_i 接下来M行,每行3个数a b ...

2018-07-19 19:46:29 149

原创 BZOJ2733:永无乡

线段树合并裸题。 另外用并查集维护当前的根在哪里即可。 代码:#include<bits/stdc++.h>using namespace std;int read(){ int x=0,f=1; char ch=getchar(); while (ch<'0'||ch>'9'){if (ch=='-') f=-1; ch=getch...

2018-07-17 09:08:55 145

原创 BZOJ3622: 已经没有什么好害怕的了

题意:给定两个长度为N的互不相同的序列,将其两两配对,求有多少种配对使得a[i]>b[i]的对数减去其他对数恰好为k。一道经典的计数题,但思路理清后发现并不算难。首先设x为a[i]小于b[i]的对数。x+x+k=n2*x=n-k所以当n-k为奇数,答案为0。先令ne[i]表示小于a[i]的最后一个b[j]的位置。首先考虑设f[i][j]表示到前i个糖果,有j个位置满足配对,且不考虑后续情况。...

2018-04-26 23:01:14 226

空空如也

空空如也

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

TA关注的人

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