当前位置: 首页 > news >正文

怎么把抖音关键词做上去北京优化网站公司

怎么把抖音关键词做上去,北京优化网站公司,php儿童摄影网站源码,店面设计案例Problem - 1336A - Codeforces Linova and Kingdom - 洛谷 解析: 开始认为分情况讨论 k 小于等于叶子结点和大于叶子结点的情况,然后选择深度最深的叶子结点和子孙数量最小的结点,但是发现如果把某一个非叶子结点选取,那么其子孙…

Problem - 1336A - Codeforces

Linova and Kingdom - 洛谷

 解析:

        开始认为分情况讨论 k 小于等于叶子结点和大于叶子结点的情况,然后选择深度最深的叶子结点和子孙数量最小的结点,但是发现如果把某一个非叶子结点选取,那么其子孙的贡献都会减少。

        考虑贪心,首先DFS出每个节点的深度deep(根节点为 0 )和每个节点的子孙结点个数 num(不带本身),这样如果某个结点被选取,那么其贡献为 deep - num ,所以我们选取最大的 k 个结点累计即可。

        此处贪心的正确性证明:如果我们要选择某个结点,那么他的所有子孙结点肯定要被选择。如果不这样的话,那么显然选取他的子孙结点对于答案的贡献更高(deep更大,num更小),所以此时这个结点的子孙结点肯定都被选择,所以贡献值为 deep - num        

#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N=2e5+5;
int n,k,dis[N];
vector<int>e[N];
priority_queue<int>q;
int dfs(int u,int deep,int fa){dis[u]=deep;if(e[u].size()==1&&u!=1){	//叶结点 q.push(dis[u]);return 1;}int cnt=0;for(int i=0;i<e[u].size();i++){if(e[u][i]!=fa) cnt+=dfs(e[u][i],deep+1,u);}q.push(dis[u]-cnt);		//优先队列统计 return cnt+1;		//返回子孙结点个数 
}
signed main(){scanf("%lld%lld",&n,&k);for(int i=1;i<n;i++){int a,b;scanf("%lld%lld",&a,&b);e[a].push_back(b);e[b].push_back(a);}dfs(1,0,-1);	int res=0;while(k&&q.size()){res+=q.top();q.pop();k--;}cout<<res;return 0;
}
http://www.yayakq.cn/news/350191/

相关文章:

  • 龙岩网站建设方案企业网站如何找词
  • 桐城做网站的公司工程建设项目管理系统
  • 怎样给公司做一个网站做推广如何做阿里巴巴免费网站
  • 怎么做网站需求分析开装潢公司做网站
  • 中文网站建设中模板租服务器空间
  • 曲阜市政对过做网站的是那家网站jquery上传源代码
  • 悠悠我心个人网站模板预付做网站订金怎么做账
  • 给网站做h5缓存机制html代码自动生成器
  • 网站建设与维护试卷 一seo 优化 服务
  • 免费ppt模板 网站开发wordpress系统教程 pdf
  • 广州网站平台建设网络推广外包一年多少钱
  • 自己做网站卖二手车手机网站模板带后台
  • 网站开发的工资是多少深圳网站建设怎样做
  • 网站和app设计区别河南省建设银行网站年报
  • 用wordpress怎么做网站荆州网站建设公司
  • 备案期间网站可以做竞价吗龙岗二职
  • 建站模板安装视频教程全集快速学习网站建设
  • 广州英铭网站建设企业信息化管理软件有哪些
  • 如何编写网站后台铁岭开原网站建设
  • 做网站安阳长沙免费网站建站模板
  • 网站运营团队建设江西锦宇建设集团有限公司网站
  • 名聚优品 一家只做正品的网站网站建设的岗位职责
  • 那家建设网站p2p公司最好程序外包接单
  • 网站流量来源wordpress当地时间
  • wordpress建的手机网站申请网站域名空间
  • phpstudy搭建网站教程企业网站如何建设流程
  • 建立一个购物网站需要多少钱网站建设教程多少钱
  • 广告设计图片大全 模板广州网站优化关键词方法
  • 大型门户网站建设费用php 调试网站
  • 免费网站建设设计制作公司在越南做网站都是什么人