会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
shao0320
仍然自由自我,永远高唱我歌
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
3
4
5
6
7
8
9
10
···
12
下一页
2019年7月13日
[暑假集训Day4T2]卡拉赞之夜
摘要: 抹茶学长给的标程可以被卡到O(N2M2)??? 考虑二分答案+暴力check+离散化+卡常数 首先进行离散化,其实判重的话会更快,但是由于矩阵元素大小太大了,hash判重MLE,所以我就直接记录了NM个元素之后排序,即可二分离散化后数组中的下标。 二分离散化数组的下标,对于每一个下标考虑暴力chec
阅读全文
posted @ 2019-07-13 15:43 shao0320
阅读(222)
评论(3)
推荐(0)
2019年7月12日
[暑假集训Day4T1]羊圈
摘要: ZYC同志开农场了????? 二分答案。 对于每一个二分出来的答案对其进行检查(check),检查是否有一个长度大于m的字段和的平均值大于mid。方法如下:先把原数组的每一个元素减去mid,储存进一个新的数组中,我们只需要看这个数组中有没有一段子串和大于0即可(因为都减去了mid,如果大于零加回来后
阅读全文
posted @ 2019-07-12 14:40 shao0320
阅读(201)
评论(0)
推荐(0)
2019年7月11日
[暑假集训Day3T3]平板涂色
摘要: 同样是搜索经典题。 优化并不多,只需在当前步数已经大于目前答案时剪枝就可以了。 此题重点在于如何判断第k个矩形能不能选。 设矩形i的左上坐标为i(squ[i].upx,squ[i].upy),右下角坐标为i(squ[i].dox,squ[i].doy)。则判断k号矩形可以涂的条件为: if(!vis
阅读全文
posted @ 2019-07-11 21:50 shao0320
阅读(265)
评论(0)
推荐(0)
[暑假集训Day3T2]骑士问题
摘要: 标准的广搜。 采用队列保存形态,如果不会广搜的可以多看看PJ知识点。由于输入多组数据,每次标记数组要清空,每次队列元素也都要清空。 参考代码如下: 1 #include<iostream> 2 #include<cstring> 3 #include<queue> 4 using namespace
阅读全文
posted @ 2019-07-11 21:35 shao0320
阅读(181)
评论(0)
推荐(0)
[暑假集训Day3T1]小木棍
摘要: 经典搜索题。 考虑以下9种优化 1)按木棍长度排序,使得较大长度的木棍被较早的选出。 2)只找能够整除的木棍长度,因为不能被sum整除一定不会出整数根,自然也就不是最优解。 3)枚举木棍长度时只需从最大的木棍长度(拼出的木棍长度不会小于最大的长度也不会大于总长度)枚举至总和的二分之一。如果还没有出解
阅读全文
posted @ 2019-07-11 21:31 shao0320
阅读(203)
评论(0)
推荐(0)
[暑假集训Day2T3]团建活动
摘要: 个人认为这周题中较难的一道。 题意大概为:给定一张N个点M条边的无向图,求出无向图的一棵最小生成树,满足一号节点的度数不超过给定的整数K。保证 N <= 20 首先用map存取节点,之后抛去1号节点,求每一个联通分量的MST,就得到了一个局部最优解,设p为联通块的个数,接下来从每一个联通分量中找一个
阅读全文
posted @ 2019-07-11 20:32 shao0320
阅读(200)
评论(0)
推荐(0)
[暑假集训Day2T2]走廊泼水节
摘要: 给定一棵n个点的图上的最小生成树,让你把它补成完全图,使得新图的MST还是给定的MST且边权和最小,输出需要增加的边权和。 设size[i]表示以i号为祖先的并查集的大小。 首先按边权排序,之后在做MST的过程中,答案cnt+=(size[v]*size[u]-1)*(w+1),来解释一下这个式子,
阅读全文
posted @ 2019-07-11 20:21 shao0320
阅读(142)
评论(0)
推荐(0)
[暑假集训Day2T1]种树
摘要: 标算是贪心,我写了个差分约束????? 设dist[i]表示1-i号土地种的树的总棵数,考虑以下几种约束条件: 1)dist[y]>=dist[x]+z,即x号土地至y号土地间至少种了z棵树 2)dist[i-1]>=dist[i]-1,即i号土地最多比i-1号土地多种1棵树 3)dist[i]>=
阅读全文
posted @ 2019-07-11 07:59 shao0320
阅读(140)
评论(0)
推荐(0)
2019年7月8日
[暑假集训Day1T3]新的开始
摘要: 新建一个虚拟节点后直接跑最小生成树即可,从虚拟节点往每个节点连的边权为每个点建发电站的代价,许多人的考场贪心策略是:先构建原图的最小生成树后找一个花费最小的地方建发电厂。但是这样做不对的地方在于:如果每个地方的点权很小但是一些边的边权十分大,就不如多建几个发电厂核算,因此新建虚拟节点就是考虑到了这种
阅读全文
posted @ 2019-07-08 21:54 shao0320
阅读(181)
评论(0)
推荐(0)
[暑假集训Day1T2]北极通讯网络
摘要: 这题主要考察对“卫星电话”的理解,k个卫星电话相当于可以让k个联通块保持联通,因此我们只需要让原图连成k个联通块,然后给每个联通块的任意一个节点发一部卫星电话即可。因此我们需要连n-k条边,特别地,当k=0时只需要连n-1条边 一定要好好读题!!!题目要求求边权的最大值,毒瘤样例求最大值,最小值,边
阅读全文
posted @ 2019-07-08 21:46 shao0320
阅读(283)
评论(0)
推荐(0)
上一页
1
2
3
4
5
6
7
8
9
10
···
12
下一页
公告
****************************************** 页脚Html代码 ******************************************