给出一棵树,对于每一个叶子节点要使得在它的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. sgu233 little kings

    题目大意: 有n*n的棋盘上放k个国王.国王可以攻击与它相邻的八个格子.现在要使国王不相互攻击,有多少种放置的方案数.一个格子不能放两个国王. n<=10,k<=n*n. 分析:简单的状态 ...

  2. 移动Oracle的用户表空间文件方法

    原文:http://www.linuxidc.com/Linux/2014-07/104702.htm 1.以sys用户登录        sqlplus /nologSQL>connect s ...

  3. 黄聪:使用WORDPRESS自带AJAX方法

    例如给网站每页logo后面的一句名言,点击“换一条”就会ajax动态加载一条,使用了wordpress的自带ajax方法.下面介绍如何使用wordpress自带ajax方法: 1.在header.ph ...

  4. POJ 2411 Mondriaan'sDream(状压DP)

    题目大意:一个矩阵,只能放1*2的木块,问将这个矩阵完全覆盖的不同放法有多少种. 解析:如果是横着的就定义11,如果竖着的定义为竖着的01,这样按行dp只需要考虑两件事儿,当前行&上一行,是不 ...

  5. Linux命令(17)du 查看文件和目录磁盘使用情况

    Linux du命令也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的. 1.命令格式: du [选项][文件] 2.命令功能 ...

  6. semanage: 未找到命令

    [root@hn ~]# semanage port -l|grep ssh-bash: semanage: 未找到命令 yum -y install policycoreutils-python

  7. 如何让div水平居中

    代码实例: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w ...

  8. EF下CodeFirst、DBFirst与ModelFirst分析

    EF4.1有三种方式来进行数据操作及持久化.分别是Database-First,Model-First,Code-first:1.Database First是基于已存在的数据库,利用某些工具(如Vs ...

  9. memcached命令行参数说明(转)

    1.启动Memcache 常用参数 -p <num>      设置TCP端口号(默认不设置为: 11211) -U <num>      UDP监听端口(默认: 11211, ...

  10. selenium启动firefox、ie、chrome各浏览器方法

    1.启动firefox浏览器 a.如果你的本地firefox是默认路径安装的话,如下方式即可启动浏览器 WebDriver driver = new FirefoxDriver(); driver.g ...