【普及组】模拟赛组 总结
这次比赛我考了分,比我预计高了,但是下次还要继续努力。
第一题:
题目
解题方法
方法:树形
设表示以为根的子树需要使用的最少的草的种类数,表示节点的儿子个数,表示与结点相连的结点数量。
除了根节点以外的其他结点都与个结点相连,而有一个结点恰好是它的父亲结点。但是由于根结点没有父亲结点,因此
注:这里我们假定是整棵树的根。
那么可以得到
注:表示的儿子。
上面式子的表示以为根的子树需要使用的最少的草的种类数,表示的儿子的数量再加上这个结点,表示的儿子的数量再加上和两个结点。
那么答案就是。
时间复杂度为。
方法:数学
设表示与结点相连的结点数量。
我们可以发现,答案就是。
时间复杂度为。
得分情况
比赛时满分。
第二题:
题目
解题方法
这道题的解题方法是搜索。
求面积:
其实求面积就是求最大的连通块,我们直接搜索就可以找到了。
求周长:
提出理论
周长就是搜索时越界或点的数量。
证明理论
现在有一个图,如下:
红色区域的周长是。
也就是从当前这个位置往个方向遍历,然后发现全部都是,所以周长为。
这就证明了周长是点的数量。
那么现在有另外一个图,如下:
红色区域的周长是。
也就是个点加上个边界。
这就证明了周长是边界加点的数量。
证明结束。
注意:会爆栈,最好用(我就是这样被扣了分)!
得分情况
比赛时分。
改题后分。
第三题:
题目
解题方法
设和分别表示第座山的左右端点。
则
那么我们按左端点从小到大排序,然后如果左端点相等,就按右端点从大到小排序。
最后只要判断一下当前这座山是否大于前面的山就行了。
其实思路是贪心。
得分情况
比赛时分。
改题后满分。