标签:排列 子树内 noip 吊打 子树 一颗 重集 节点 联考
noip模拟67 solutions
又是一次联考,好像有90多个人一起考吧
好像我第五???在自己\(oj\)上\(zxb\)比我高,就当我是自己学校第二好啦
这次的时间分配还是比较不错,干完第一题,不对不对是读完第一题发现不会做就走人了
去看看第二题,然后得到了本场考试唯一一个\(AC\)的题目
除了第二题剩下的全是暴力
T1 数据恢复
对正解有启发的部分分我拿到了,然而并没有想到正解
需要排序!!
对于父子关系符合顺序的直接不用管它
不符合顺序的,就是说爸爸在儿子后面,直接将儿子放在爸爸下一个就行了
我们可以用并查集维护这个东西,然后用堆排序
T2 下落的小球
这个有一点点移球游戏感觉,还有可重集排列的分层排列
首先我们从上向下遍历我们可以找到每一颗子树内可以掉出去多少个球(也就是这颗子树的叶子节点的\(a\)的加和)
那么这颗子树内的所有节点的球只能通过自己的叶子节点掉出去,
所以我们此时就知道了当前这一颗子树可以留出多少个位置来给上面的球
每一颗子树都有这样一个值,需要将上面的球分配给每一颗子树,这个就可以用可重集排列
注意这里的可重集排列需要将每一颗子树内的出口节点看成相同的节点,等到下一层的时候就拆开了
上面排好序了,每一颗子树的选择顺序也是不一样的,这里仍然是可重集排列
这里有一个小技巧,当我们无法直接算出排列数,或者有限制条件时,我们就可以将大排列拆成一个一个的小排列,最后全部乘起来就是答案了
T3 消失的运算符
T4 古老的序列问题
标签:排列,子树内,noip,吊打,子树,一颗,重集,节点,联考 来源: https://www.cnblogs.com/hzoi-fengwu/p/15365655.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。