HDU 5326 Work(求每个人的下属,直接和间接)
来源:互联网 发布:acg18新域名 编辑:程序博客网 时间:2024/06/11 09:46
题目地址:点击打开链接
思路:刚开始思路就错,只记录了直接的下属,没想到下属的下属也属于老大管,深搜就可以解决,看到大神用并查集也A了,太叼了
AC代码1:
#include<iostream>#include<cstring>using namespace std;int a[110],visit[110],n;int dfs(int up){ int i,sum = 0; for(i=1; i<=n; i++) { if(a[i] == up) { sum++;//把小弟算进去 sum += dfs(i);//把小弟的小弟算进去 } } return sum;}int main(){ int k,i,x,y,sum1; while(cin>>n>>k) { sum1 = 0; memset(a,0,sizeof(a)); for(i=0; i<n-1; i++) { cin>>x>>y; a[y] = x;//y的老大是x } for(i=1; i<=n; i++) { if(dfs(i) == k) sum1++; } cout<<sum1<<endl; } return 0;}
AC代码2:
#include<iostream>#include<cstring>using namespace std;int head[110],down[110];void find(int x){ while(head[x] != x) { down[head[x]]++; x = head[x]; }}int main(){ int n,k,i,sum1; int x,y; while(cin>>n>>k) { memset(down,0,sizeof(down)); sum1 = 0; for(i=1; i<=n; i++) { head[i] = i; } for(i=0; i<n-1; i++) { cin>>x>>y; head[y] = x; } for(i=1; i<=n; i++) { find(i); } for(i=1; i<=n; i++) { if(down[i] == k) sum1++; } cout<<sum1<<endl; }}
大神地址:点击打开链接用图的连通表示下属关系很有新意
#include<iostream>#include<cstring>using namespace std;int map[110][110];int n;int dfs(int head){ int i,sum = 0;//在这里初始化 for(i=1; i<=n; i++) { if(map[head][i]) { sum++; sum += dfs(i); } } return sum;}int main(){ int k,i; int x,y,sum1; while(cin>>n>>k) { sum1 = 0; memset(map,0,sizeof(map)); for(i=0; i<n-1; i++) { cin>>x>>y; map[x][y] = 1; } for(i=1; i<=n; i++) { //sum = 0;不能在这里初始化sum,会导致一个值加多次 if(dfs(i) == k) sum1++; } cout<<sum1<<endl; }}大神地址:点击打开链接
0 0
- HDU 5326 Work(求每个人的下属,直接和间接)
- 求雇员的直接上级和间接上级
- HDU:5326 Work(并查集+小技巧统计每个人的手下个数)
- Q85:对比“直接光照”和“间接光照”的反射模型
- hdu 5326 work (树的遍历)
- Activity的启动方式(直接启动、间接启动)
- hdu 5326 Work(水)
- 【HDU】5326 - Work(拓扑)
- 直接或间接死循环的因果
- Servlet API的直接与间接访问
- IP分组的交付和转发系列: (1) 直接交付和间接交付
- 令人迷惑的AT&T的jmp:直接跳转和间接跳转
- 间接成员操作符-> 和直接成员操作符的区别.
- Android组件学习之TextView的直接子类和间接子类
- 文法左递归的消除(直接左递归和间接左递归)
- 关于指针的浅析---------指针基础部分2,间接访问和直接访问
- okhttp的间接 和 总结
- hdu 5326 Work(并查集)
- struct msghdr 和 struct iovec
- Zabbix之配置文件详解
- MATLAB下使用libsvm (三)
- 小驱动程序Mainl
- STL
- HDU 5326 Work(求每个人的下属,直接和间接)
- 如何用cmd对SVN进行更新,并且将文件压缩解压
- Spring Note 1
- 从ProtoThread开始到contiki的学习
- struts2的文件上传与下载
- iOS开发笔记--序列化 NSKeyedArchiver,NSPropertyListSerialization
- Apple Watch的课表应用iOS源码项目
- 七月英语
- CXF实战之传输文件(六)