04 2022 档案

摘要:题目链接 可以很容易地想出暴力思路,但复杂度高达O(n2),所以必须优化 思路1:不难发现在a数组到i,b数组到j处,在它们前面的有i*j个,这i*j个数不可能比它大,所以只要在暴力枚举过程中判断i*j<=n即可。 最后只要对和排序,求出前n个。注意存放和的数组不能只有n个。 vector<int> 阅读全文
posted @ 2022-04-29 16:45 m0_51303687 阅读(50) 评论(0) 推荐(0) 编辑
摘要:思路:dp,设dpu,i代表以u为根,距离为i+1的节点总数。 最后dpu,1要加上所有dpv,0-1,其中v是u的子节点(要-1是为了排除v->u的边) 则每个节点i的答案为dpi,0+dpi,1+1 代码如下: 1 for(int i=1;i<=n;i++){ 2 for(int j=fir[i 阅读全文
posted @ 2022-04-08 16:38 m0_51303687 阅读(25) 评论(0) 推荐(0) 编辑
摘要:洛谷P2250记录 阅读全文
posted @ 2022-04-01 17:02 m0_51303687 阅读(33) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示