自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 NOIP 2015 求和

于是我们便可以向颜色上靠,可以利用分组的思想,将同一颜色分成一组,又根据。s[c[i]][i%2]为颜色为c[i]的个数。做到这个地步,我们似乎基本没有用到颜色。将有关f[1]的式子提出来找规律。观察题目,对式一进行移项,发现。可以把相同颜色的分为奇偶两组。显然后面的可以用前缀和求出来。读题,我们发现完全可以暴力。当然这个复杂度也是过不了的。将有关f[1]的式子提出来。那怎么样得出最后答案呢。

2023-07-25 07:53:15 142

原创 NIOP 2015 推销员

很容易可以想出第k次的疲劳是在(k-1)次的基础上选择一个max(在已知最大点左边+此点的疲劳,(在已知最大点右边-已知最大点)*2+此点的疲劳)如果在后面选了一个点,那此时的距离已经达到最大,如果再选一个点的话只会减小疲劳值(已经排好序了),所以只选一个点就够。即在前i个点中,去点第i个点,再从(i+1)个点到n中选出一个距离+该点疲劳值最大值即可。每次确定距离时,要在前i个点与后(n-i)个点中确定一个最大值,于是我们便把疲劳从大到小排序,再确定距离。但这个代码时间复杂度超了。

2023-07-24 17:49:11 53

原创 NOIP 2013 车站分级

看到题目,经分析,每次停靠的站点必定大于没有停靠的站点,经过输入的几次列车,我们便可以得出他们的关系,这时候,我们就要用到图论了样例二举个例子 由图得,1>6>2由此我们看出,从入度为0的点开始,每一层的等级都需要+1,由此我们不难想到拓扑排序设入度为0的点等级为1,每下一层等级就要加1,最后遍历一遍全部点,求出最大的等级即可这份代码很容易得出,但提交洛谷会有两个点MLE,是因为vector在存的时候,空间不够了他会用倍增的方法再开一边,于是。

2023-07-23 20:15:58 82

原创 NOIP 2014 螺旋矩阵

得来的,于是我们便可以求出每一圈最后结尾的数,再利用我们已经求出来的那个位置,便可以得出答案。我们发现这一个矩阵是一圈一圈的,每一圈都可以看成一个单独的部分。好 点的位置我们解决了接下来该解决这个位置是哪个数了。第一眼看到%50的数据范围小,于是我们便可以打暴力。至于是哪一圈,我们便可以用递归,一层一层将。那这毕竟是一个题解,不能拘泥于得部分分。又发现只有在矩阵最外围的一圈的数好求。转换成在这个矩阵里某一圈 即 将。为某一个矩阵的边长,那么边长为。于是我们便可以将原来的坐标。于是我们便开始探索正解。

2023-07-23 11:35:38 129

原创 最短路及衍生问题

可以用Floyd传递闭包,判断连通性,总之,看到n的数据范围较小时,便可以向Floyd上靠。1.在松弛操作成功后,松弛前的最短路便大于松弛后的最短路,于是次短路便更新为松弛前的最短路。张图,每层之间边使用特殊权值,每层之内的边使用正常权值,我们便拿无赖坐飞机举例。的正负,所以我们便使用SPFA来求,若有负环,则无解。2.松弛操作失败,但松弛后的路径比原来的次短路要小,于是更新次短路。我们可以在读边权的时候改成负的,再正常求最短路,最后把负的再负回去。,再求最短路,由于不确定。经典三重循环,求多源最短路。

2023-06-15 11:42:11 56

原创 1599:【 例 3】修剪草坪

d[i][1]:既然选了,又因为连续的牛不能超过m,所以就至少需要在(i-m)处断开,即不选第(i-m)头牛 那么就等于d[j][0]+(a[j+1]+a[j+2].......+a[i])的最大值。由之前的动态规划,我们不难想出,d[i][1]都是由前面区间的d[j][0]在加上后面 从j+1到i 的最大值 观察前面这个式子。由于在 q[++tt]=i 的作用下,第一次循环过后q[hh]便不为0,所以s[q[hh]]也不为0。d[i][0]:既然第i个牛没选,那么他就等于他的前一个状态的最大值,即。

2023-06-01 08:42:55 131 1

原创 1598:【 例 2】最大连续和

时间限制: 1000 ms 内存限制: 524288 KB提交数: 3162 通过数: 873【题目描述】给你一个长度为 nn 的整数序列 {A1,A2,⋯,An}{A1,A2,⋯,An},要求从中找出一段连续的长度不超过 mm 的子序列,使得这个序列的和最大。【输入】第一行为两个整数 n,mn,m;第二行为 nn 个用空格分开的整数序列,每个数的绝对值都小于 10001000。【输出】仅一个整数,表示连续长度不超过 mm 的最大子序列和。【输入样例】

2023-05-31 16:31:50 198 2

空空如也

空空如也

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

TA关注的人

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