提交时间:2026-06-06 09:46:49
运行 ID: 443430
//邻接点 #include<bits/stdc++.h> using namespace std; struct edge{ int from,to,next; }; edge a[10010]; int pre[1000010]; int n,e; //n个定点 e条边 int k=0;//表示a数组的下标 //建边,邻接表链式前向星 void add(int u,int v){ k++; a[k].from=u; a[k].to=v; a[k].next=pre[u]; pre[u]=k; } int main(){ cin>>n>>e; int x,y; for(int i=1; i<=e; i++){ cin>>x>>y; add(x,y);//表示x点到y点之间有有向边 } for(int i=1; i<=n; i++){ int b[1000010],l=0; for(int j=pre[i];j!=0;j=a[j].next){ b[l++]=a[j].to; } sort(b,b+l); cout<<i<<"\n"; for(int i=0;i<l; i++){ cout<<b[i]<<' '; } cout<<"\n"; } return 0; }