hdu 5326 Work (2015多校第三场第11题) 暴力

来源:互联网 发布:js车牌代表什么意思 编辑:程序博客网 时间:2024/05/17 21:40

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5326

题意:给你n个人和一个k,再给你n-1个关系a b,表示a是b直接上司,求有k个下属的上司有几个。

思路:由于1 <= n <= 100 所以还是暴力接题比较快

代码:

#include <stdio.h>#include <string.h>#include <iostream>#include <algorithm>#include <vector>#include <string>#include <stdlib.h>using namespace std;int mp[110][110];int main(){    int i,j,kk,n,k,a,b,ans;    while(scanf("%d%d",&n,&k)==2)    {        memset(mp,0,sizeof(mp));        for(i=0;i<n-1;i++)        {            scanf("%d%d",&a,&b);            mp[a][b]=1;        }        for(kk=1;kk<=n;kk++)        {            for(i=1;i<=n;i++)            {                for(j=1;j<=n;j++)                {                    if(mp[i][kk]&&mp[kk][j])                        mp[i][j]=1;                }            }        }        ans=0;        for(i=1;i<=n;i++)        {            int cot=0;            for(j=1;j<=n;j++)            {                if(mp[i][j]&&i!=j)                    cot++;            }            if(cot==k)                ans++;        }        printf("%d\n",ans);    }    return 0;}


0 0