hdu 5326

来源:互联网 发布:java基础教程视频 编辑:程序博客网 时间:2024/06/18 07:24
#include <iostream>#include<cstdio>#include<cstring>#include<vector>#include<algorithm>#include<cmath>using namespace std;const int N=105;vector<int> G[N];int in[N],sub[N];bool vis[N];int cas=1;int T,n,m,k,tot;void init(){    for(int i=0;i<N;i++)        G[i].clear();    memset(in,0,sizeof(in));}void dfs(int rt){    sub[rt]=1;    for(int i=0;i<G[rt].size();i++)    {        int u=G[rt][i];        dfs(u);        sub[rt]+=sub[u];    }}int main(){    while(scanf("%d%d",&n,&k)!=EOF)    {        init();        for(int i=0;i<n-1;i++)        {            int u,v;            scanf("%d%d",&u,&v);            G[u].push_back(v);            in[v]++;        }        int root=1;        for(;root<=n;root++)         {            if(in[root]==0)                 break;        }        dfs(root);        int sum=0;        for(int i=1;i<=n;i++)         {            if(sub[i]==k+1)                  sum++;        }        printf("%d\n",sum);   }    return 0;}<img alt="害羞" src="http://static.blog.csdn.net/xheditor/xheditor_emot/default/shy.gif" />

0 0
原创粉丝点击