3 条题解
-
1
vecotr动态数组写法
#include<bits/stdc++.h> using namespace std; int m,n; //m边 n节点 vector<int> e[110]; bool pd[110]; int main() { cin>>n>>m; int father,son; //输入用 for(int i=1;i<=m;i++) { cin>>father>>son; e[father].push_back(son); pd[son]=1; } int gen; //存储根节点 for(int i=1;i<=n;i++) if(pd[i]==0) { gen=i; cout<<gen<<'\n'; break; }//找根节点 int maxx=0,pos; //存储 拥有 最多子节点 的 节点,以及节点的位置 for(int i=1;i<=n;i++) { if(e[i].size()>maxx) { maxx=(int)e[i].size(); pos=i; } } //找最多子节点 cout<<pos<<'\n'; sort(e[pos].begin(),e[pos].end()); //要求按照从小到大输出 for(int i=0;i<(int)e[pos].size();i++) cout<<e[pos][i]<<" "; return 0; }
信息
- ID
- 555
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 3
- 标签
- (无)
- 递交数
- 72
- 已通过
- 37
- 上传者