2017.04.15【NOIP2017提高组】模拟赛B组总结
第一题
水题,把原数组排个序,递归,把目前最小放在根节点上,递归右子树,递归左子树构造。
第二题
比赛想法
1、直接暴力做,能拿60分。
2、把连通块压成点,相邻的连通块连边,SPFA。发现连边判重有问题,弃掉(其实加个hash就可以了)
3、把边缘点当做起始点宽搜出每个点到边缘点的答案,时超90。
正解
由于是8连的连通块,所以一个不在边界上的连通块必然被另一个连通块包围,而每个连通块所需步数一样,题目也可以理解为进入尽量少的连通块。所以顺序扫描i, j,Flood Fill所有没被填充过的连通块,由于询问不会在1上,进入这个连通块所需要的次数即包围它的连通块(必然已经被Flood Fill过)的次数(若这个连通块为1)或包围它的连通块的次数+1(若这个连通块为0)。
第三题
比赛想法
先把他掰直,再各种乱搞。
正解
先把他掰直,再各种乱搞。
第四题
比赛想法
最小生成树,每个点上下连边,横向连最小的边
正解
最小生成树,每个点上下连边,横向连上方和下方最小的边
总体评价
这次比赛除了最后交错了程序以外,其他都挺好的,时间把控方面仍需加强,时间没调配好,第三题有想法没时间打,第四题考虑得少了些。算法不仅要会打,还要会用。