自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

lajiyuan的博客

但哪有一路走来都是顺风的。

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

原创 【 Educational Codeforces Round 57 (Rated for Div. 2) D. Easy Problem】DP

D. Easy Problem题意给你一个长度为n的字符串,每个点有一个删除的代价,问让字符串中不存在子序列hard的最小删除代价。1<=n<=1051<=n<=10^51<=n<=105做法定义dp[i][0]为到i为止的序列中不存在h的最小代价dp[i][1]为到i为止的序列中不存在ha的最小代价dp[i][...

2018-12-29 21:19:34 422

原创 【Educational Codeforces Round 57 (Rated for Div. 2) F. Inversion Expectation】逆序对+计数

F. Inversion Expectation题意给你一个数组,有些位置是-1,代表可以填数,要求填数之后数组为一个1-n的排列,求所有满足条件的填数方案中的逆序数的期望个数。做法记一共n个数,其中m个未知,因此可能的排列结果有m!种我们分四种情况计数逆序对1.已知和已知:简单的逆序对计数,对于每种排列贡献相同,所以要乘m!,做法可以用归并排序或者树状数组2.未知和未知:考虑任意...

2018-12-29 21:18:53 326

原创 【 Educational Codeforces Round 57 (Rated for Div. 2)】A.B.C.D.F

前言开场前打的牛客,状态很好,感觉晚上稳了,开场五分钟前滴了眼药水,准备好演算纸和模板,还剩30s的时候生病的女朋友突然说睡不着,于是纠结了20s之后用小号注册比赛,决定娱乐着打。结果很显然,一个紫名狗打绿名号没上蓝,可见专注和不专注还是不一样的,赛后补过了D和F,都是挺有意思的题。D算是经典套路,但是F应该算是思维细节题。biu_biubiu rating+=1rating+=1rating...

2018-12-29 21:17:39 493

原创 【Codeforces Round #526 (Div. 2) D. The Fair Nut and the Best Path】树形DP

D. The Fair Nut and the Best Path题意给你一棵树,在树中找出一条路径(也可以只有一个点),这条路径(点权和-边权和)最大。做法我们设dp[i]为以i为出发点向子树方向的最优路径,那么我们可以很轻松的用儿子的dp数组更新父亲的dp数组也就是取一个最大的dp[i]-w[v],w[v]表示父亲与这个儿子之间的路径权值我们有了dp数组,我们发现,对于某个点...

2018-12-12 22:30:57 164

原创 【Codeforces Round #526 (Div. 2) E. The Fair Nut and Strings】 思维题+Xor树

E. The Fair Nut and Strings题意给你两个只含ab的长度为n的字符串,让你在字典序在这两个之间的字符串中找出k个字符串,使这k个字符串有最多的不同前缀,输出不同的前缀个数。做法把ab考虑为01,而且还要考虑前缀,很显然可以想到01字典树我们把字典树画出来一看,如果我们要查011和110之间的字符串,我们发现就是这样一个区域很明显我们只要统计每个长度的前缀...

2018-12-12 22:25:26 207

原创 【Codeforces Round #526 (Div. 2)】

前言上午考完编译原理,12:52左右回到实验室,然后学弟说打算13:00开一场vp,之后我们愉快的在13:05开始了这场vp,开场看A,题意把我搞晕了好久,后来冷静了一下15min1A,之后看B,一眼二分,check写错wa了一次,26min2A,之后看C,发现就是个暴力,42min1A,来到D,发现做过,开始写,奈何建边的时候边权写错,浪费了20分钟找这个bug实在不应该,之后数组开小RE一发...

2018-12-12 21:41:02 164

原创 【51NOD1120 机器人走方格】卡特兰数+卢卡斯定理

51NOD1120 机器人走方格题意就是给你一个nn的方格,从左上到右下画一条线。一个机器人从左上走到右下,只能向右或向下走。并要求只能在这条线的上面或下面走,不能穿越这条线,有多少种不同的走法?做法就是把它看成括号匹配问题,向下走看成左括号,向右走看成右括号,就变成了构造一个长度为2(n-1)的合法括号匹配序列,就是卡特兰数ans=C(2∗n−2,n−1)−C(2∗n−2,n−2)ans...

2018-12-09 10:28:26 236

原创 【51NOD 1084矩阵取数问题】DP

51NOD1084 矩阵取数问题题意就是给你一个n*m的矩阵,从左上角走到右下角(只能向右向下走),再从右下角走到左上角(只能向左向上走),第一次来到一个格子会获得这个格子的权值,问最终回到左上角的获得的最大总权值.做法就是将两条路径看作都是从原点出发的,然后设置dp[i][j][k][l]为第一条路径走到(i,j),第二条路径走到(k,l)时的最大权值和,转移也很清晰,四种转移方式,如果...

2018-12-09 10:16:28 207

原创 【51NOD1055 最长等差数列】DP+剪枝+Hash

51NOD1055 最长等差数列题意就是给你n个数,让你用n个数组成一个最长的等差序列。1<=n<=1041<=n<=10^41<=n<=104做法我们肯定要想O(n2)O(n^2)O(n2)的做法再加一些剪枝,首先将数组排序,之后我们设dp[i][j]dp[i][j]dp[i][j]表示以i为结尾的公差为j的最长等差序...

2018-12-06 01:27:48 163

原创 【 Codeforces Round #525 (Div. 2) C. Ehab and a 2-operation task】构造题

C. Ehab and a 2-operation task题意给你一个数组,有两种操作,第一种操作是选择一段前缀全部加上x第二种操作是选择一段前缀全部%x最终用不超过n+1个操作构造一个递增数组做法我们考虑有Mod操作,所以其实数字可以加到特别大,最后一次Mod降下来就可以而我们从后往前构造,就保证之后的操作不会影响之前的操作然后我们只要让第i个数字%Mod=i就可以了。由...

2018-12-05 11:03:10 136

原创 【 Codeforces Round #525 (Div. 2) D. Ehab and another another xor problem】交互+思维题

D. Ehab and another another xor problem题意这是一道交互题,一开始有两个数a,b,0<=a,b<=2300<=a,b<=2^{30}0<=a,b<=230你一共最多提问62次,每一次用两个数c,d提问每个提问有三种返回结果如果a⊕c>b⊕d如果 a \oplus c...

2018-12-05 11:01:42 233

原创 【 Codeforces Round #525 (Div. 2)】 A.B.C.D

前言biubiubiu_ rating+=50rating+=50rating+=50 1890->1940A. Ehab and another construction problem题意给你一个数字x,1<=x<=100,找出一对数字a,b满足1<=a,b<=x1<=a,b<=x1<

2018-12-05 11:00:59 175

原创 【Codeforces Round #515 (Div. 3) C. Books Queries】前缀和

C. Books Queries题意有一个书架,最开始没有书,每次往书架的左端或右端加书,每次查询给一个书的id,问最少拿下来多少书这个书可以出现在最左或者最右端。保证每次添加的书id不同,而且每个查询不改变书架上的书,只是查询。做法用一个前缀和记录,加某个书之前往左端加过多少书,往右端加过多少书,,这样每次查询得时候,只要如果查询得那本书是以左端添加的,那么它出现在左端需要拿走添加时往...

2018-12-04 00:14:37 90

原创 【Codeforces Round #515 (Div. 3) B. Heaters】dp

B. Heaters题意有n个格子,每个格子有01权值,1代表这个格子可以安装暖气,每个暖气可以温暖距离自己小于r的格子,问最少安装几个暖气能温暖n个格子。1<=n<=1031<=n<=10^31<=n<=103做法dp[i]表示最后一个暖气放在i能使前i个格子都温暖的最小暖气数转移就很明显,dp[i]=mindp[...

2018-12-04 00:13:33 141

原创 【Codeforces Round #515 (Div. 3) D. Boxes Packing】 二分

D. Boxes Packing题意题意就是给你m个大小为k的盒子和n个大小为aia_iai​的物品,用盒子装物品的方法是,能装下就装,并且容量减少aia_iai​,否则就换下一个盒子(换下去的盒子不能再用),要求从左到右减少最少数量的物品,保证m个盒子按照这个方法能装下剩余的物品。做法很明显满足二分性质,二分+check就完事了!代码#include<stdio.h>...

2018-12-04 00:11:04 131

原创 【Codeforces Round #515 (Div. 3) E. Binary Numbers AND Sum】暴力统计贡献

E. Binary Numbers AND Sum题意给你a,b两个数,初始答案为0,当b大于0,答案加上a&b,之后b>>1问最终的答案,这里的a,b是长度为2e5的01串。做法考虑a每一位对答案的贡献,如果a这一位为0,则没有贡献如果a这一位为1,则他能与之后b的每一个1对答案做一次贡献,所以贡献就是b在这一位之后的1所组成的数。于是只要倒着遍历a串,同...

2018-12-04 00:10:24 154

原创 【Codeforces Round #515 (Div. 3) F. Yet another 2D Walking】 建图+Dijkstra

F. Yet another 2D Walking题意题意就是给你一个二维坐标系,之后给你n个点(xi,yi)(x_i,y_i)(xi​,yi​),每个点的等级为max(xi,yi)max(x_i,y_i)max(xi​,yi​),最初起点在(0,0),想走到高一级的点,就要走完本等级所有的点,问最终走完所有点的最小移动距离(每一步只能向上下左右四个位置移动)做法看图可以知道一个特性,...

2018-12-04 00:08:32 351

原创 【Codeforces Round #515 】 A.B.C.D.E.F

前言今天自己开了一场vp,由于两天没打就开了个div3练练手,奈何最后脑子短路没能ak,开场跟榜做题A题5min1A,C题17min1A,之后B题由于初始状态的定义的问题导致-2,dp已经出现了两次这种错误,实在是不应该,B题36min3A,之后发现E就是个**题,60min1A,回来看D,发现也很好写78min1A,剩下将近40min可以看F,奈何去想了贪心,导致最后才发现贪心不能过样例,下...

2018-12-04 00:07:44 194

原创 【51NOD1420数袋鼠好有趣】 sort+思维

题意给你n只袋鼠,一只小袋鼠能装进一只大袋鼠的条件是,大袋鼠的大小至少是小袋鼠的两倍。只大袋鼠最多可以装一只袋鼠。小袋鼠被装进大袋鼠之后就不能再装其它的袋鼠了。求一个最优方案,使得被看见的袋鼠最少。做法一定是先sort用小的装大的,但是用哪个去装呢一定是先sort用小的装大的,但是用哪个去装呢一定是先sort用小的装大的,但是用哪个去装呢我们sort之后把袋鼠分为两部分,前一半做小袋鼠,后...

2018-12-01 23:29:16 200

原创 【51NOD1282时钟】 最小表示法

51NOD1282时钟题意就是给你n个时钟,你可以旋转表判但是指针不会跟着旋转,问任意次旋转后最多有多少个时钟完全相同做法就是考虑其实表盘在这里没什么用,只要所有指针的间隔相同,那么这两个时钟就相同,于是我们求出所有间隔,判断两个循环串是否有相同得时刻就用最小表示法,再用最小表示法表示一下,求最多出有多少个相同的最小表示法即可。代码#include<stdio.h>#in...

2018-12-01 23:17:11 185

空空如也

空空如也

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

TA关注的人

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