自定义博客皮肤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)
  • 收藏
  • 关注

原创 L. Campus

显然不可,注意看此题的k,很小,所以状态很少,不用重复计算,只需要对每个状态计算一次就够,最坏情况应该是层层包围吧,也只有30次。如果每个时刻都求一次,那么时间复杂度是很高的,可以达到。无向图,t个时刻,求每个时刻的多源最短路。

2024-07-21 22:31:48 340

原创 牛客周赛 Round 52 小红的最大字典序

我感觉有点向多路归并,所以直接用字符串存数字,用优先队列存储所有字符串,队头一定是最大的,每次取队头,这样就能够保证最后的字典序最大。就是多个数字,各个数字内的相对顺序不能变,求出最大字典序。

2024-07-21 22:17:14 355

原创 牛客周赛 Round 52 小红的括号串

我们知道,如果要合法,首先左右括号要匹配的了,也就是左右括号数量一样,这个题因为可以循环移位,所以只要数量一样了,就是一定合法的。是问号的数量,意思是从中选一半填充其中一种括号,另一半自然定了,不需要再算。1.如果长度是奇数,一定无法构成合法的,因为数量无法匹配。3.左右括号不匹配,那么就需要让左右括号数量相当,从。中选一部分去填充一种括号,另一部分就定了,不需要再算。2.如果左右括号已经匹配了,那么答案就是求。就是给个字符串,求合法的字符串数量,

2024-07-21 22:13:05 476

原创 牛客周赛 Round 51 小红的数组

如果有l=1的情况,无法计算到sum[0]=0的值,所以我们直接把区间整体右移,这样就没有边界问题了。已经包含了当前区间最左边这个点,意味着左边这个点一定会被计算到,这是不对的,所以要。,询问区间连续子段和的绝对值最大是多少,即存在。所以在这个线段树里我们维护最大值,最小值;就是区间询问题,维护好我们要的东西。这里可以参考y总讲的这个题目->次询问,每次询问给定区间。这个思路的实现要容易很多。这样的话绝对值最大就是。,最大值减最小值保证该。这里都使用线段树实现。是该区间绝对值最大,

2024-07-15 17:41:25 1016

原创 AcWing 1107. 魔板

可以用颜色的序列来表示一种魔板状态,规定从魔板的左上角开始,沿顺时针方向依次取出整数,构成一个颜色序列。相信您一定已经很清楚题意了,就像一个状态可以通过三种方式移动,到达最终状态的字典序最小的最短操作序列。去存状态和序列,因为题目说一定有解,所以可以在第一次状态和答案相同时输出即可。你要编程计算用最少的基本操作完成基本状态到特殊状态的转换,输出基本操作序列。Rubik 先生在发明了风靡全球的魔方之后,又发明了它的二维版本——魔板。对于每种可能的状态,这三种基本操作都可以使用。来表示,这是基本状态。

2024-07-13 23:08:59 791

原创 AcWing 173. 矩阵距离

bfs的性质是第一次遇见一定是最短路,所以所有的1入队,bfs遍历的所有格子都是最短的。如果只有一个1,那就是直接入队bfs,那么有多个一是否也是如此,答案是肯定的。就是这上面的每个点到1的最短距离。

2024-07-13 11:36:22 680

原创 AcWing 90. 64位整数乘法 龟速乘

注意数据范围,这是longlong相乘都会爆掉的,所以要用到龟速乘。所以我们可以通过遍历b的所有二进制位寻找答案。该式意味着,b某一位二进制值为1则加。是不是很像快速幂的思想。

2024-07-13 00:48:46 892

原创 AcWing 106. 动态中位数

对于每个数据集,第一行输出两个整数,分别代表数据集的编号以及输出中位数的个数(应为数据个数加一的二分之一),数据之间用空格隔开。数据集的剩余行由数据集的数据构成,每行包含 10个数据,最后一行数据量可能少于 10个,数据之间用空格隔开。依次读入一个整数序列,每当已经读入的整数个数为奇数时,输出已读入的整数构成的序列的中位数。利用对顶堆思路,一个存大的,一个存小的,每个存一半,奇数时中位数就是中间的,像沙漏。每个数据集的第一行首先输入一个代表数据集的编号的整数。,代表数据集中包含数据的个数,

2024-07-13 00:21:18 348

原创 2023 (ICPC) Jiangxi Provincial Contest -- Official Contest J. Function

给出一个正整数 n(1 ⩽ n ⩽ 105) 和 n 个二次项系数为 1 的二次函数,第i 个函数形如 y = (x − i)^2 + bi(1 ⩽ bi ⩽ n)然后给出一个正整数 m(1 ⩽ m ⩽ 105),表示操作总数。容易发现,第一种操作来说,因为a是整数且在(1,n)范围内且查找的是最小函数值,所以不需要添加,只需要让 i=a时的b取最小,类似bi=min(b,bi)的函数,然后m个操作,第一种操作加一个**y = (x-a)^2+b **的函数,第二种操作找x=a时候最小函数值。

2024-07-12 23:56:04 387

原创 The 2024 Sichuan Provincial Collegiate Programming Contest F. Isoball: 2D Version

我的思路比较笨,把圆当作一个矩形,因为圆完全在矩形中,其实和以圆心为原点,半径为边长的矩形在矩形中是等价的。有一个固定的矩形,一个大小固定的圆沿一个方向运动,问有没有一个时刻圆完全在矩形里。就是一个球根据一个向量移动,有没有一个时刻能够满足完全在矩形里(这个题意容易懂,没什么好简化的)再根据以上所有情况去考虑是否符合完全包含就可以了。[1]将圆的左边移动到和矩形左边共线。[2]将圆的右边移动到和矩形右边共线。[1]将圆的上边移动到和矩形上边共线。[2]将圆的下边移动到和矩形下边共线。代码写的较丑,请见谅。

2024-07-11 18:13:29 498 5

原创 2024 ICPC ShaanXi Provincial Contest B. Expression Matrix

否则,因为要保证表达式合法,所以不能有符号相邻,必然出现波浪型,拿第一行最后一行举例子,如果第2行需要是1,必然存在某一个n满足倒数第二行必须是1,有可能出现两个11的情况,所以需要在这一列添加加号,位置需要在考虑。构造一个 n × m 的矩阵,其中每个位置要么是 1,要么是 + 或者 ∗,使得在满足每一行每一列均为一个合法表达式的前提下,最小化每一行、每一列表达式的值之和。如果不可避免的某一列(行)出现了两个11,当然不能让他们相乘,所以要用加号,当然加号的位置也需要关注,避免加更多的数!

2024-07-11 17:54:59 445

原创 2024 ICPC ShaanXi Provincial Contest C. Seats

给出长为 n 数组 ai, 你需要找到长为 n 的数组 bi(1 ≤ i ≤ n, 1 ≤ bi ≤ 2n) 满足 ∀i ̸= j, bi ̸= bj 且 ∀i, bi = i 或 bi = ai。最大化 bi = ai 的个数并输出最大值。进行拓扑排序,可以轻易分割基环树森林和森林,不在拓扑序列中的一定成环!可以直接解决我们要的第一个东西。第二个东西只需要记录下逆向边,从每个结点出发寻找最长路即可。2.森林中所有以 (>n

2024-07-11 17:41:39 654

空空如也

空空如也

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

TA关注的人

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