邻接表 lrj

来源:互联网 发布:ps做淘宝的图片大小 编辑:程序博客网 时间:2024/06/09 20:12
#include <cstdio>const int M = 505, N = 105;int u[M], v[M], fir_out[N], fir_in[N], out[M], in[M];void read_G(int &i){scanf("%d%d", &u[i], &v[i]);out[i] = fir_out[u[i]];fir_out[u[i]] = i;in[i] = fir_in[v[i]];fir_in[v[i]] = i;}int main(){int n, m;while(scanf("%d%d", &n, &m)!=EOF, n||m) {for(int i = 1; i <= n; i++) {fir_in[i] = fir_out[i] = -1;}for(int i = 1; i <= m; i++) {read_G(i);}for(int i = 1; i <= n; i++) {int od = 0;int tmp = fir_out[i];while(tmp != -1) {od++;tmp = out[tmp];}if(i == 1)printf("%d", od);else printf(" %d", od);}puts("");for(int i = 1; i <= n; i++) {int id = 0;int tmp = fir_in[i];while(tmp != -1) {id++;tmp = in[tmp];}if(i == 1)printf("%d", id);else printf(" %d", id);}puts("");}return 0;}


0 0
原创粉丝点击