给出一棵树,对于每一个叶子节点要使得在它的k距离内至少一个节点被打了标记,(叶节点不能打标记,非叶结点也不必满足这个条件),现在已经有一个节点s被打了标记,问至少还要打几个标记(这表达能力也是捉急...自己懂就算了...)

 #include<iostream>
 #include<cstring>
 #include<cstdio>
 #include<vector>
 using namespace std;
 ;
 vector<int> G[maxn],/*tree[maxn],*/nodes[maxn];
 int fa[maxn],cover[maxn],n,s,k;
 void dfs(int u,int f,int d){
     fa[u]=f;
     ) nodes[d].push_back(u);
     /*else{*/
         ;i<G[u].size();i++){
             int go=G[u][i];
             if(go!=f){
                 //tree[u].push_back(go);
                 dfs(go,u,d+);
             }
         }
     //}
 }
 void put(int u,int f,int d){
     //if(d>=k+1) return;
     cover[u]=;
     /*for(int i=0;i<tree[u].size();i++){
         int go=tree[u][i];
         if(d<k) put(go,u,d+1);
     }*/
     ;i<G[u].size();i++){
         int go=G[u][i];
         );
     }
 }
 void init(){
     ;i<=n;i++) G[i].clear(),/*tree[i].clear(),*/nodes[i].clear();
 }
 int main()
 {
     int T;
     scanf("%d",&T);
     while(T--){
         scanf("%d %d %d",&n,&s,&k);
         init();
         ;i<n;i++){
             int x,y;
             scanf("%d %d",&x,&y);
             G[x].push_back(y);
             G[y].push_back(x);
         }
         dfs(s,-,);
         ;
         memset(cover,,sizeof(cover));
         ;i>k;i--){
             ;j<nodes[i].size();j++){
                 int r=nodes[i][j];
                 if(cover[r]) continue;
                 int p=r;
                 ;q<=k;q++) p=fa[p];
                 put(p,-,);
                 ans++;
             }
         }
         printf("%d",ans);
         /*if(T)*/ printf("\n");
     }
     ;
 }

LA3902 Network的更多相关文章

  1. LA3902 Network (树上dfs)

    题目链接:点击打开链接 题意:n台机器连成一个树状网络,其中叶节点是客户端,其他节点是服务器,目前有一台服务器s正在提供服务.让你在其他服务器上也安排同样的服务,使得每台客户端到最近服务器的距离不超过 ...

  2. UVALive3902 Network[贪心 DFS&&BFS]

    UVALive - 3902 Network Consider a tree network with n nodes where the internal nodes correspond to s ...

  3. 【树形贪心】【UVA1267】Network

    重要意义:复习好久没写的邻接表了. Network, Seoul 2007, LA3902 Consider a tree network with n nodes where the interna ...

  4. LA3902 Networlk

    Network Consider a tree network with n nodes where the internal nodes correspond to servers and the ...

  5. Recurrent Neural Network系列1--RNN(循环神经网络)概述

    作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...

  6. 创建 OVS flat network - 每天5分钟玩转 OpenStack(134)

    上一节完成了 flat 的配置工作,今天创建 OVS flat network.Admin -> Networks,点击 "Create Network" 按钮. 显示创建页 ...

  7. 在 ML2 中配置 OVS flat network - 每天5分钟玩转 OpenStack(133)

    前面讨论了 OVS local network,今天开始学习 flat network. flat network 是不带 tag 的网络,宿主机的物理网卡通过网桥与 flat network 连接, ...

  8. OVS local network 连通性分析 - 每天5分钟玩转 OpenStack(132)

    前面已经创建了两个 OVS local network,今天详细分析它们之间的连通性. launch 新的 instance "cirros-vm3",网络选择 second_lo ...

  9. 再部署一个 instance 和 Local Network - 每天5分钟玩转 OpenStack(131)

    上一节部署了 cirros-vm1 到 first_local_net,今天我们将再部署 cirros-vm2 到同一网络,并创建 second_local_net. 连接第二个 instance 到 ...

随机推荐

  1. 【solr】solr5.0整合tomcat

    1.下载 solr版本必须和lucene版本一致,这个链接http://archive.apache.org/dist/lucene/是apache子项目库,在这里可以下载lucene,我这里使用的是 ...

  2. IGS_学习笔记03_Integrated SOA Gateway设定配置(案例)

    20150506 Created By BaoXinjian

  3. DBA_Oracle Startup / Shutdown启动和关闭过程详解(概念)

    2014-08-07 Created By BaoXinjian

  4. linux命令(13) 删除指定文件夹下后缀名相同的文件

    方法一: find 目录 -name "*.abc" | xargs rm命令有点危险,可以先执行前半段,看看是不是你要删除的文件, 然后再整条执行 方法二:find . -nam ...

  5. 客户端获取服务端自定义类数据 z

    客户端获取服务端自定义类数据 问题一:超时问题,在最后获取数据的时候突然提示服务超时,服务已断开 解决:配置文件添加: <bindings> <wsHttpBinding> & ...

  6. Opencv 2.4.9在Ubuntu下的配置与安装

    [原]Opencv 2.4.9在Ubuntu下的配置安装  Opencv 2.4.9在Ubuntu下的配置与安装 surgewong@gmail.com http://blog.csdn.net/su ...

  7. [Flex] PopUpButton系列 —— 添加按钮图标

    <?xml version="1.0" encoding="utf-8"?><!--为主按钮添加默认图标 PopUpButtonIcon.mx ...

  8. JDBC中的事务-Transaction

    事务-Transaction 某些情况下我们希望对数据库的某一操作要么整体成功,要么整体失败,经典的例子就是支付宝提现.例如我们发起了支付宝到银行卡的100元提现申请,我们希望的结果是支付宝余额减少1 ...

  9. CRM 2016 自定义lookup过滤

    function preFilterLookup() { //终端业态 Xrm.Page.getControl("new_typeofoperationid").addPreSea ...

  10. PostgreSQL在Ubuntu上安装指南

    安装环境: Ubuntu 10.04-desktop-i386 PostgreSQL 8.4 1. 安装PostgreSQL 输入如下命令 sudo apt-get install postgresq ...