自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 刷题记录-luoguP2679 子串

f[i][j][k]表示用A前i个字符且必选A[i]来匹配B前j个字符,分成k段状态转移方程:f[i][j][k]=f[i-1][j-1][k]+∑(p=j-1~i-1)f[p][j-1][k-1]发现f[p][j-1][k-1]可以边转移边计算,于是时间复杂度O(n*m*k)开过滚动之后空间也是可以的。边界不大好想,转移的细节也有不少,真的要注意了#include#

2017-09-21 00:43:18 241

原创 刷题记录-P2312 解方程

题目链接:https://www.luogu.org/problem/show?pid=2312这题一开始是这么考虑的:如果f(x)!=0,那么f(x)%k一定也不等于0这样可以进行检验,选取若干个k使得解的范围缩小,最后用高精度一一进行验证。70分#include#include#include#include#include#define MAXN 105#de

2017-09-18 00:42:24 441

原创 计蒜客 2017 NOIP 提高组模拟赛(二)Day2

T1:劫富济贫这题一开始hash做的,超时#include#include#include#include#include#include#define MAXN 3000005#define MOD1 12000017#define MOD2 15000127#define ll long long#define pii pairusing namespace

2017-09-17 11:49:51 1268

原创 NOIP 2014 D1T3 飞扬的小鸟

这题一开始毫无头绪,后来发现抽象成模型后并不是很复杂向上飞就是完全背包,向下飞就是01背包但是细节方面还是比较麻烦,dp的程序好想好写不好AC比如说:向右飞的过程中做完全背包,必须是0~m一起做,是一个整体不能只做非墙的部分还是得深思熟虑啊ToT#include#include#include#include#define MAXN 10005#define MA

2017-09-13 00:55:45 258

原创 计蒜客 2017 NOIP 提高组模拟赛(一)Day1

T1:蒜头君打地鼠当时用树状数组求和的,效率并不是很高,但也能过一部分数据,其实暴力用前缀和优化下似乎可以AC。正解是矩阵旋转+二位前缀和。#include#include#include#include#include#define MAXN 2005#define pii pairusing namespace std;int n,k;int dat[MAXN

2017-09-12 00:35:47 383

原创 计蒜客 2017 NOIP 提高组模拟赛(一)Day2

转送门T1:蒜头君的兔子首先考虑暴力算法:用数组完全模拟,作为对拍程序:#include#include#include#include#define MOD 1000000007#define ll long longusing namespace std;int n;ll a[15],b[15];int main(){ scanf("%d",&n

2017-09-09 23:21:55 352

原创 刷题记录-luoguP2149 [SDOI2009]Elaxia的路线

这题只需抓住两条性质;1)不会出现上图情况,原因:两点之间,如果走最短路,那么一定是尽量走相同的路径所以我们可以记录在两人最短路中的共同部分,找到形成最长的一条链,并且是单向边组成的链2)不会出现这种情况,即共同走过一段路后不可反向,原因:不符合最短路所以考虑面对面走过的情况时,只需将其中一人的边反向即可===============================

2017-08-06 17:40:18 322

原创 刷题记录luoguP1972 [SDOI2009]HH的项链

这题是典型的区间处理问题由于数据规模,我们可以采用离线操作:先将询问区间保存下来,对区间进行合理的排序,便于降低复杂度然后采用合适的算法(1)树状数组我们可以给相应元素一个权值1,用树状数组计算sum,但这题显然一般的计算是行不通的,考虑到区间的有序性,我们以区间左端点排序,然后依次处理,这样对于区间i+1左端点一定不会在区间i左端点之前那么我们处理到区

2017-07-29 07:46:09 179

原创 刷题记录-luoguP2055 [ZJOI2009]假期的宿舍

对于学生和床,可以看成是二分图,让尽可能多的学生能睡到床上,可以看成二分图的最大匹配对于本校学生,自己可以睡自己的床和认识的人的床,我们连一条边对于外校学生,可以睡认识的人的床,我们连一条边然后跑一边匈牙利算法就AC啦*********************************************#include#include#include#inclu

2017-07-20 16:22:57 238

原创 刷题记录luoguP1983 车站分级

这题一开始没什么思路,想到车子途中没走过的地方的等级,肯定小于车子走过的地方的等级。于是我就企图让没走过的地方的等级最大值+1去更新走过地方的等级,于是开了线段树,由于一遍还不能过,因为后来的车子更新的值会影响到前面的,于是反复辗转~~~悲惨超时。。。*************************************************这题的正解是拓扑排序,由于车子

2017-07-16 15:43:55 238

原创 刷题记录-codevs2144 砝码称重 2

典型的折半枚举法本质上是用空间换时间的思想,把一半的数据搜过之后用数组保存起来,搜另一半的时候就可以直接使用了这样就可以把时间复杂度由乘转变为和效率改善非常大哦*************************************#include#include#include#include#include#include#define MAXN 35

2017-07-16 11:00:18 257

原创 刷题记录-codevs1553 互斥的数

这题一开始我的思路是用图论做,首先建立一个图,每个数都作为节点,对于每个数n,如果存在n*p,那么就从n节点向n*p节点连一条边,由于每个数n要么不存在n*p,要么只存在一个n*p(集合元素只有一个啦)所以最后得到的图,一定是若干个不连通的链,对于每个链来说,不妨设为a1,a2,a3……,an那么肯定是a1与a2互斥,a2与a3互斥,……,an-1与an互斥。对于不

2017-07-16 10:14:36 195

原创 刷题记录-luoguP1525 关押罪犯

这题我采用的方法是二分答案,二分边的长度D,注意左边界是0开始的,因为可能不会发生冲突。然后难点就是check函数判断相应的长度是否可行,我的思路是这样的:如果可行的话,那么长度大于D的边两个节点,肯定会被分在两个集合里面,从而想到了二分图:新建一个图,只保存原图中大于D的边,然后判断是否是二分图即可。二分图判断可以用深搜染色,效率是O(|V|+|E|)我用的是并查

2017-07-14 22:07:54 244

原创 刷题记录-luoguP1801 黑匣子_NOI导刊2010提高(06)

本题主要就是找第k小的数可以建一棵二叉搜索树,设节点左子树的个数为size,则有:如果k==size+1,那么显然这个节点就是第k小的数如果k如果k>size+1,那么k肯定在右子树中,且为右子树中第k-1-size小的数。**********************************#include#include#include#include#inc

2017-07-12 22:45:20 260

原创 刷题记录-luoguP1631 序列合并

把a数组分成n部分,对于每个a[i]都看成加上整个b数组。比如样例:32 6 61 4 8可看成2-> 1 4 86-> 1 4 86-> 1 4 8设c[i]为当前a[i]未处理的最小小标,所有的a[i]+b[c[i]]即可构成组合的最小序列,在其中用堆在序列中可以找到最小的,这样就是n*log n了讲的不是很清楚,详见代码********

2017-07-12 22:40:14 208

原创 刷题记录-luoguP1113 杂务

全线工作,这样就是唯一最优解,找出完成每个任务的时间,然后取最大值即可。************************************************#include#include#include#include#include#include#include#define pii pair#define INF 0x7f

2017-07-12 16:49:41 261

原创 刷题记录-luoguP1991 无线通讯网

这题是典型的二分答案一开始用最小生成树做,用S(卫星电话)把最大边删去,发现并不是最优解。二分枚举D,小于等于D的边才可以“发挥作用”,用并查集计算连通分量的个数,只有连通分量的个数小于等于S时,才认为可行。*******************************************#include#include#include#include#in

2017-07-12 15:29:29 204

原创 刷题记录-luoguP1265 公路修建

这是一道最小生成树的题目实际上,那些条件都是唬人的,根本没用。对于条件(2):不妨假设A申请修建公路AB,B申请修建公路BC,C申请修建公路CA,构成了环。然而,A申请AB,则有ABB申请BC,则有BCC申请CA,则有CA所以AB从而可得:对于一个图来说,节点的最短边不可能成环。所以这题是裸最小生成树。******************************

2017-07-10 20:47:09 252

原创 刷题记录-luoguP1341 无序字母对

这是一道欧拉路径的问题欧拉路径:对于无向图,当且仅当奇数度为0或2时,存在欧拉路径,即可以不重复的经过每一条边。(1)当奇数度为0时,即所有节点的边数都是偶数时,肯定能回来(n条边,n/2条出来,n/2条回来),故叫做欧拉回路(2)当奇数度为2时,这两个相应的奇数度节点一定一个是起点,一个是终点,否则做不到不重复的经过每一条边。***************************

2017-07-09 20:57:14 219

空空如也

空空如也

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

TA关注的人

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