竞赛题解
文章平均质量分 77
曝雨
最近好忙
展开
-
【竞赛题解】Codeforces Round #715 (Div. 2) C
C. The Sports Festival题意:对于给定的整型数组aaa,每次选择其中一个元素aia_iai(不能重复选择同一元素),每次计算已选择的元素的极差(最大元素减最小元素的差),输出最后极差和的最小可能值思路:(赛后补题)采用二维动态规划,最后一个极差一定是整个数组的极差(amax−amina_{max} - a_{min}amax−amin),而前一个极差无非有两种情况:剔除最小的元素,即整个数组中最大减去最次小剔除最大的元素,即整个数组中最次大减去最小若不剔除两边的元素,原创 2021-04-18 21:40:34 · 225 阅读 · 0 评论 -
【竞赛题解】第22次CCF计算机软件能力认证 B
题意:对于n∗nn*nn∗n的矩阵,求存在多少个这样的点(以该点为中心半径为 rrr 正方形块中的总值的平均数不大于阈值 ttt )如上图所示,靠边缘的点所形成的方块是不完整的,当时第一遍我是打算用dp计算中央部分完整的块,而对于边缘不完整的块则采用暴力,实现起来比较简单,没想到的是有30%(n<=600,r<=100n<=600,r<=100n<=600,r<=100)TLE了,码代码前只是粗略的计算了一下时间复杂度,感觉能过。于是又想到了下面的方法,消除了暴力的部原创 2021-04-12 00:20:35 · 1608 阅读 · 4 评论 -
【竞赛题解】2021年广东工业大学第十五届文远知行杯程序设计竞赛(同步赛)
B 找山坡题意:在数组中找到两相等元素相距最大的距离且这两元素间的元素都不小于该两端值思路:采用单调栈例如:a[] = { 2 3 5 4 6 3 },栈内存储元素的坐标(从1开始),便于计算距离首先将a[1]、a[2]、a[3]依次入栈当到a[4]时,发现其小于栈顶元素(a[4] < a[stack.top()]),由于a[3]大于a[4],这样一来a[3]无论如何都不能与之后的元素相匹配,因为若是a[3]与a[i] (=5)匹配,但两者之间一定会夹着小于它们的元素a[4],因此不满足原创 2021-04-06 15:47:43 · 269 阅读 · 0 评论 -
【竞赛题解】Codeforces Round #710 (Div. 3)
B. Partial Replacement题意:有字符串由.和*组成,可标记其中*,首尾的*必须被标记,使被标记的*之间距离不超过k,求最少的标记量思路:首先从首尾出发确定首尾*的位置,再由首beg出发向后的k个元素里,将最靠右的*标记选择最右的标记为了更快地抵达尾ed,该局部最优可推广到全局最优将刚标记的*作为新的起点,再在向后k个元素里标记最右的*,重复执行上述步骤直至抵达尾ed为止#include <bits/stdc++.h>#define fastio() ios_原创 2021-03-26 22:01:04 · 434 阅读 · 0 评论 -
Codeforces Global Round 13 C
C. Pekora and Trampoline题意:对于数组a,每次出发开始可以选择任意元素作为起始点,然后在数组上移动,落点为i + a[i],直至超出数组范围,每次经过的点的值减一(先移动再减/直至减到1为止),求使数组元素全为1所用最少的出发次数数据范围:数组大小n:[1,5000][1,5000][1,5000] 元素大小 a[i]:[1,109][1,10^9][1,109]思路:模拟+优化首先观察元素大小的最大值远高于数组大小上限,此时站在上面会直接超出数组范围,直接模拟会多次重复该动原创 2021-03-01 13:49:57 · 247 阅读 · 1 评论