自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 2024牛客暑期多校训练营6 A-Cake

所以对于一阶段,Grammy希望走过1占比更多的字串,Oscar希望走过0占比更多的字串,树型dp可以得到经过这个节点Grammy的分数,但考虑2阶段Oscar会选一个1占比最少的前缀,所以还要取最小的分数,叶子节点不管。先看二阶段,因为是Oscar分蛋糕,可以为空,所以对于Oscar来说要找一个0占比最多(1占比最少)的前缀,长为l,然后将蛋糕均分为l块,(如果不均分的话先拿的人会拿走最大的那块)。两人都走最优策略,问Grammy最后取到整个蛋糕的几分之几。

2024-08-01 22:20:10 593

原创 桃子的矩阵快速幂

桃子得到了一个递推式,f(n)=2*f(n-2)+f(n-1)+n^4,f(1)=a,f(2)=b,现在给你n,a,b,要你计算f(n)的值为多少。对于每组数据,第一行三个整数n(1≤n≤2^31),a(1≤a≤2^31),b(1≤b≤2^31)。第二个样例:第三个数字93=2*1+10+3^4,第四个数字369=2*10+93+4^4。如题目所写的矩阵快速幂,f的部分直接写了,主要是(n+1)^4怎么由n^4转化过来。第一个样例:第三个数字85=2*1+2+3^4。可见还需要n^3,n^2,n。

2024-07-21 15:52:11 203

原创 Dave 题解

总而言之就是暴力,枚举所有x坐标作为左边界,将能在正方形区域内的点存进数组,按y坐标排序,以其作为下边界,统计所有在范围内的点。题意是对于n个点,长为r的正方形区域最多可以覆盖几个点(包括边界)。

2024-07-17 23:13:28 207

原创 2024牛客暑期多校A-A Bit Common

对于每一位来说,k个数可以组成2^k种排列,但要去掉全为1的可能所以要减一,除了最后一位还有m-1位,每一位的可能数量相乘就可以得到长度位k的子序列的数量,剩下的位数要确保加上之后位于不为1,所以全放偶数(最后一位是0),因此可以得到下式。因为按位与之后要为1所以子序列中二进制最低位应该为1,其他每一位上至少有一个数在这一位有一个0才能使按位与之后这一位上是0,也就是说如果这一位全是1就不行。题目意思求是长为n,每个数小于2^m的数组,存在子序列(不需要连续)按位与之后为1,这样的数组有多少个。

2024-07-16 23:46:07 782

原创 abc353

数组大小3e5暴力肯定超时。每个数都会加n-1次,所以先将这些数加起来,然后减掉需要取模的那些和的1e8就行。所以先排序方便使用lowerbound判断有几个和大于1e8,减去相应数量的1e8就行。(因为1e8不是longlong wa了……题意:数组里的数两两相加对1e8取模后求和。

2024-05-12 01:08:42 278

原创 骑士精神 题解

题目要求最后的结果是图上的这样,让白色的都到左下,黑色的都到右上部分,不在对应区域的(比如白色在左上部分,黑色在右下部分,或者在空格处)棋子需要通过和空格交换来移动使其最终到相应的区域,对于这种交换,(当然可以更多),就是空格在对应区域的情况下(比如空格在右上,而黑色棋子在左下,空格和黑色棋子交换,那么这枚棋子就到需要去的地方了),而且同样的,这里用了深搜IDA*(广搜实在想不明白,我是蒻苟,这里深搜很好理解),深搜搜空格的位置,但是要搜完全部的路线有8^15这么多,所以要剪枝。对于每组数据都输出一行。

2023-08-17 20:00:53 177 1

原创 Largest Submatrix of All 1’s 题解

令当前访问到第i行第j个元素,h[j]表示以i行j列的高度,f[i]表示以h[j]为高的矩形的最大值,把高度存进栈内,只要栈顶的高度大于h[j]就可以划出高为h[j]宽为j - st[top]的矩形,比当前高的高度就出栈,保证栈单调,继续往前找直至出现一个小于h[j]的高度,在st[top]之后的高度都是可以的,所以可以用h[st[top]] * (j - st[top - 1] - 1)表示以j为最右端h[j]为高的最大矩形大小。题意是在给出的矩阵中,找一个最大的其中元素全为1的子矩阵,输出其大小。

2023-08-16 19:43:20 51 1

原创 Matrix Power Series 题解

类似于一般的快速幂求法,在求矩阵快速幂里的ans数组要先赋值成单位矩阵,其他的和快速幂一样,因为不能直接返回数组,所以这个用一个结构体表示矩阵(一开始形参不小心写了二维数组就错了,救命)。一般来说用等比数列求和来计算,但是这里是矩阵没法求1-A和1-A^k,所以用分治的方式去求,其中需要求矩阵的乘方,用矩阵快速幂求解。然后用分治的方式求等比数列的和。n为奇数:f[n] = f[n >> 1] + a ^ n;n为偶数:f[n] = f[n >> 1]题意是对一个n*n的矩阵,求上述式子的结果。

2023-08-16 01:52:13 103 1

原创 SPF 题解

找割点就用targan算法解决,这里还需要得到去掉割点后有几个连通块,那么,对于某个点u如果它之后还没访问的点在去掉u之后能到的最小的点大于等于这个点被访问到的那么去掉割点之后它所在的部分就是一个新的联通块(去掉割点跟别的其他部分都不连通了),这里用map记录,多组数据记得初始化。题目意思是找去掉割点之后,剩余几个联通块。

2023-08-14 23:35:23 73

原创 Electric Fence 题解

因为有一边固定在x轴上,一行一行平行于x轴找比较方便,于是遍历纵坐标从1到m - 1,对于每个整数y分别求在直线ac和bc之间的点的个数之和就是答案。可以直接得到ac和bc的方程然后将y带入求解得到两端的值,分别上取整和下取整相减就是这一行在三角形中的点的个数,题目大意是以(0, 0),(p, 0),(n, m)三个点围成的三角形内部有几个不在边界上的整数点。令a = (0, 0), b = (p, 0), c = (n, m)所以如果算出来的边界有整数还要再加一或者减一。

2023-08-12 19:07:00 52

原创 矩阵游戏 题解

婷婷是个喜欢矩阵的小朋友,有一天她想用电脑生成一个巨大的n行m列的矩阵(你不用担心她如何存储)。本题的问题是,n,m有10^1000000,分别用作乘数和次方,做为乘数的时候可以边计算边取余很方便,作为次方的时候据说可以使用欧拉降幂来减少次数,公式如下,推导建议自己搜搜这里借个公式。由于最终结果可能很大,你只需要输出F[n][m]除以1,000,000,007的余数。包含一个整数,表示F[n][m]除以1,000,000,007的余数。最后求出f[n + 1][1]解方程求出f[n][m]即可。

2023-08-12 03:44:55 175 1

原创 wall 题解

题目意思是给一个图形每个点的坐标,需要你在距离每个点大于等于l的位置建墙,通过一般理性分析,在多边形中,如果两个点之间有一个点凹进去,这两点连线的距离肯定比凹进去的这部分长度小,所以把所有凹进去的点去掉,再每两个点之间求距离相加就得到答案了。然后判断凹进去的点,用向量的方式,找三个点做两个同起点向量叉乘判断顺时针和逆时针然后判断。所以最短的长度就是去掉凹进去的点之后的总长加上一个以l为半径的圆的周长。(写一下我的朴素的理解)结果四舍五入就可以了。

2023-08-11 23:44:18 58

空空如也

空空如也

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

TA关注的人

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