今天的比赛难度并不大。分数也挺好看的。
第一题的话,一看n好大,但是m只有100,那就直接上搜索就行了。
第二题,要让交换k次之后的序列最大,我的第一反应是把最大的交换到较高的位置,但是我手动算了几个数据之后,发现这种算法有bug,因为k有可能不满足交换到想要的位置。
第三题,看完题后发现在暑假的时候做过类似的题目,那题还要难一些,根据那题的思路,这道题也迎刃而解。
比赛结束还看了看后面三题,第四题,要求,y=k/x下方的整点,由于图像关于,y=x对称,所以只要找出前sqrt(n)的位置有多少个整点,乘二再去重就行了,数学图像在比赛中也可以成为解题的工具。
第五题,要用到n-2条王牌边,1条李牌边使得图构成一个最小生成树,我最开始认为,要枚举选哪条李牌边,这样就要做L次最小生成树,但是并不是这样,我可用王牌边做最小生成树,然后每次枚举选哪一条L边时,直接让L边的两个点跳到他们的lca,记录最大边。
第六题,虽然数据很小,但是,我没想到怎么做。Cost_i<=50那么二进制六位可以表示0~63的整数,所以,答案最多只有6。这样搜索就可了。搜索中要尽量加剪枝,因为我永远不知道搜索可以跑多快,好像这道题,算时间复杂度要大概100秒,但是我加了剪枝之后1秒就跑完了。
NOIP提高组 2015.11.04总结
最新推荐文章于 2024-06-07 19:43:17 发布