最近一段时间在备赛第十五届蓝桥杯,自从去年参加十四届蓝桥杯后,心中有些许遗憾,看着其他同学随便拿省二省三,我却没有任何收获,所以想再参加一次。当然,之前没有获奖很大一部分原因是自己根本没有怎么准备,算法也只是刚刚入门而已。
今天回顾了去年蓝桥杯的一道题,没想到费了九牛二虎之力才拿到60%的分数,而且只是第4题,A组的题果然是不简单。去年参加考前模拟赛时觉得蓝桥杯不是很难,结果真实难度却远高于模拟难度,现在想想模拟赛应该是所有参赛选手统一的测试,不分组别,所以很可能是C组难度,不知道今年模拟赛难度如何。
题目如下:
想到去年比赛做这个题的时候,连树的数据结构都不会写,只能无奈放弃,上学期开始跟了y总的算法课,学会了很多数据结构的写法,现在做这个题已经有一定能力,思考步骤如下:
- 使用邻接表构建树的结构,根据题目信息,存储每个结点的下标和颜色。
- dfs遍历每个结点,判断每个结点