自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 cf 练习3

设原本 有雪帽的点(设为1) 和 没有学帽(设为0)的点 差值为 dif当边长为k的矩阵覆盖后 , 设矩阵中有x1个有雪帽的点和 x2个没有雪帽的点 ,那么此时的dif 值 就会减少为 (x2 -x1)*x ,假设x2 -x1 = m1 , 有n个子矩阵 ,所以题目就转化成了是否存在x1 ,x2 ,x3 ...xn 使得 x1*m1 + x2*m2 + ....+xn*mn =dif这时,就需要用到裴蜀定理的推广 , 那么如果存在的话 , gcd(m1,m2..mn) | dif。

2024-08-08 20:16:51 878

原创 CF 训练2

思路:首先对于区间问题 , 我们可以先思考让它滑动滑动。对于[l,r],向后滑动一位后 ,[l+1 , r+1],因为两次的区间中 , [l+1 ,r]中所有数都是相同的 , 所以 可以得到s[l] = s[r+1] , 那么再向后滑动 , 就有 l+1 = r+2 , 一次类推 , 在1 ~ k中 , 每个数每次 +k , s[x] = s[x+k]的。那么我们就可以对于每个k的区间来进行处理 , 观察它们是否相同。但是对于?的话 ,我们可以先不管他,最后看1和0的个数是否都 <= k/2 就行了。

2024-08-02 13:01:50 621

原创 2024牛客暑期多校训练营 第四场

GHorse Drinks WaterG-Horse Drinks Water_2024牛客暑期多校训练营4 (nowcoder.com)这题就是初中学过的将军饮马问题,只需要走一遍x轴的 和一遍y轴 , 取小就可以了void solve(){ int x1, y1, x2, y2; cin >> x1 >> y1 >> x2 >> y2; double ret1 = (x2 - x1) * (x

2024-07-30 22:23:24 364

原创 CF训练1

看完题目之后 , 第一想法是最暴力的On3 , 对于每个i ,j ,k , 如果它们符合k的体积的话,我们就可以把这个长方体一格一格的移动 , 对于x方向 , 我们一共能移动a - i次 , 那么也就有a -i+1种方法放置 , y轴和z轴也是同理。当我们信心满满的交上去之后, 就会发现TLE了 , 那么我们可以优化一下On3的算法 , 优化成On2 ,枚举i j , 如果满足 k %(i *j) == 0的话 , 就可以得到k。

2024-06-26 18:25:43 468

原创 百日训练(第四周 , 第一天)

放了一个五一假期,玩了五天,没有刷任何题,今天做一个恢复训练。

2024-05-06 21:51:43 270

原创 算法训练计划(第四天)

之前也有训练,只是没时间写博客了,今天正好有时间,来写一下。

2024-04-26 12:23:42 784

原创 百日训练(第三天)

至于为什么没有第二天,因为昨天的题不需要补。

2024-04-19 12:25:20 336

原创 百日训练(第一天)

这题有两点1、先有人到11分2、两个人的分数差大于等于2只要清楚这两个点之后直接模拟即可。

2024-04-16 22:03:02 303 1

原创 蓝桥杯复习(自用)

一维的比较简单,没什么好说的,这里主要实现一下二维。下面是二维前缀和的模板。下面是二维差分的模板。

2024-04-12 21:36:29 193

原创 蓝桥杯14届A组题解(部分)

可以先判断这个数字的长度是奇数还是偶数,如果是奇数的话,就肯定不是了,如果是偶数的话,就有可能是,再次进行判断先判断奇偶,可以把数字转化成字符串判断接下来对偶数进行判断。

2024-03-31 17:19:49 235 1

原创 dp小练习(1)

这道题可以用On2的dp方法去做下面是核心代码这是一道模板题。

2024-03-20 19:24:58 239 1

原创 ABC 345(A - D)&& 搜索

a题很简单,有很多中方式可以做,我们可以先判断头尾是不是< 和> ,在判断中间=的个数看看它是否有n-2个。

2024-03-18 22:15:01 347

原创 补题日记(8)

区间和并就是给定n个区间将他们合并 , 我们可以使用PII类型的数组来存储每个数组的左端点和右端点,之后再将他们排序之后合并,下面是模板。

2024-03-12 20:57:01 334 2

原创 牛客小白月赛88DE 第七场蓝桥杯小白赛

在圆环中我们可以把1 - n ,定义成 0 - n-1。这样子在模n的意义下,就可以快速找到指针所在的位置,这题我们可以使用dp的方式,我们可以定义dp[n][n]表示在第n-1次是否走到了第n个位置,是的话就用1来表示,否则的话就用0来表示.

2024-03-10 20:00:41 255 2

原创 codeforces 928 (A-E)

这场是昨晚赛时打的,奈何太菜,只做出了ABCD,E题由于最后一个1e9数据太大一直过不了。

2024-02-20 20:11:00 233 1

原创 牛客月赛 &&cf

爱丽丝先手拿,每个人肯定都要拿最大的那一个,由于数组是从小到大排序的,我们只需要反转一下数组,然后再拿就行了。

2024-02-17 22:12:57 157 1

原创 cf 909 div.3题解(A-E)

如果一开始那个数就可以被3取余数,瓦尼亚先手改变了他的值,这样的话,这个数就再也不能被3整除了。其实仔细一想 , 只有 2 , 4 , -1 , 1这种数字,改变一下就能被整除的数字,瓦尼亚可以一次改变获得胜利,剩下的所有数字,瓦尼亚都赢不了。

2024-02-15 20:56:32 274 2

原创 cf 925 A - E

a题很简单,直接暴力做法即可。

2024-02-14 23:40:19 268 1

原创 codeforces补题

我们可以对每一节都进行计算,定义两个指针,r是来找求余这个步骤的,l来控制左边的范围,维护他们的和,可以用前缀和。

2024-02-14 00:17:39 419 1

原创 补题日记(8)(cf886 G H , 并查集和带权并查集习题)

当斜率为1时,我们可以推导出x1 + y1 = x2 + y2;斜率为-1时我们可以推导出x1 - y1 = x2 -y2;这样我我们可以使用map来记录一下x+y 和x - y和x和y如果有三个点,答案就是3+2+1 再 ×2,四个点就是 4+3+2+1,再×2。

2024-02-09 22:46:43 204 1

原创 补题日记(7)

这段时间都在cf上vp比赛,所以补的都是cf的题。

2024-02-08 23:52:41 362 1

原创 补题日记(6)

我们可以考虑把s1的1变成0 或者把s1的0变成1 ,这样子,假设0变成1要3次,1变成0要两次,那么0变成1那三次刚好可有两次通过交换给0变成1那两次。还有一个直接加一个1即可,所以我们只需要统计0到1和1到0的次数再取大。使用贪心的思路,可以开一个t来统计时间。看两个时间段内,是关机耗费的电量少还是开机耗费的电量少,然后把少的那一个加到t少,最后比较即可。输出矩形的面积,我们只需要记录最大的x,y和最小的x,y就可以了。两个数组中的最大和最小配对,最小和最大配对。这道题要注意开long long。

2024-02-08 00:06:36 202

原创 补题日记(5)

看到这题我们就会想到分组背包这个模型。那么这题就很容易解决了,也是把背包里面的物品分成s组,每组可以最多选择一个,问可以选下的最大值。但是这题最麻烦的地方就是它的输入格式我们可以用一个vector数组来存储。然后就是分组背包的板子了那么这题就做完了,以下是ac代码。

2024-02-06 22:22:33 669 2

原创 补题日记(4)

st算法是基于倍增原理的算法,是解决RMQ问题的一个非常优秀的算法。那么我们先来介绍一下什么是RMQ问题。RMQ就是给一个静态的长度为n的序列,我们进行m次查询,每次查询区间l到r的最大值与最小值。最后就可以得到ma,那么它的时间复杂度是多少呢?比较的复杂度是O(n),m次查询,总的时间复杂度是O(mn),效率很低。有没有一种方法可以极大的提高效率呢?答案是有的,那就是st算法。

2024-02-04 22:18:21 599 1

原创 补题日记(3)

这个就是非常经典的问题了,昨天的文章中还写了变形的01背包问题,那么我们还是来介绍一下01背包这个问题吧。一个包的体积为V , 有n个物品 每个物品的价值为wi , 体积为vi,而且每个物品只能使用一次,问能装价值最多是多少?我们采用优化的 一维数组来解决这个问题i<=n;++i) //遍历物品j>=v[i];--j) //倒着遍历背包//v[i]表示单个物品的体积 w[i]表示单个物品的价值那么这种最基础的01背包也是非常简单的,一定要掌握。

2024-01-31 21:15:42 401

原创 补题日记(2)

首先用一点贪心算法的思想 , 我们知道,在倒水量(0,a)之间获得e的满意度,倒水量(a,c)的区间获得b的满意度,大于等于c获得d的满意度(以上括号都是左闭右开)。那么想要让倒水值尽可能小,我们就可以只选择0,a,c三个倒水量。通过以上分析,我们有0对应e的满意度 , a对应b的满意度 , c对应d的满意度,这里注意,不同于普通背包的是,在普通的01背包中, 我们可以选择一下物品不取,而在这里所有物品都需要取,也就是我们需要给所有人倒水,所以遍历方式可能就不一样。首先我们还是正常定义数组。

2024-01-30 23:01:54 843 2

原创 补题日记(1)

传送门首先呢,在这道题当中我们可以在每一科当中使用左右脑学习。1、假设一科的总时间是8,那么左脑4,右脑4,只需要4的时间2、假设一科总时间是9 ,左脑4,右脑5的话,需要5的时间那么我们只看一个脑子,设成dp数组,他越接近总时间的一半,所需要的时间就越小,因为奇数的取整问题,最小时间就可以表示为 总 - dp[sum / 2];以下请看AC代码。

2024-01-29 23:45:03 272 1

原创 二分+前缀和 牛客月赛86E题 可口蛋糕

来源:牛客网小蓝制作了 n个蛋糕并将其从左往右排成一行,其中第 iii 个蛋糕的饱腹度为 wo 其可口值为 di​。由于手法过于生疏,尽管每个蛋糕的饱腹度必然为正数,但是可能存在蛋糕的可口值为负数!作为可口蛋糕大赛的评委,小灰灰需要吃掉一段连续的蛋糕,使得蛋糕的饱腹度之和至少为 W。而小蓝的得分就是小灰灰吃掉蛋糕所对应的可口值之和,她想知道在小灰灰帮助她的情况下,她的最大可能得分是多少。

2024-01-29 11:28:15 302

原创 洛谷1029与GCD和LCM

那么我们可以从x到y去枚举满p,那么q就会等于x*y/p,找到这样两个q,p后在判断其是否满足条件。例如 3 和 4的最大公约数是1 最小公倍数是12 ,那么1 *12 = 3 *4。lcm就会简单很多,因为x和y的最大公约数和最小公倍数相乘是=x*y的。当y=0时 gcd(x , y) = gcd(x , 0) = x。通过 x % y 的操作,这个函数将会返回x和y的最大公约数。要求P,Q 以 x, 为最大公约数,以 y​ 为最小公倍数。试求:满足条件的所有可能的 P,Q 的个数。

2024-01-28 17:44:27 227

空空如也

空空如也

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

TA关注的人

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