Untitled
unknown
plain_text
4 years ago
2.6 kB
6
Indexable
void add_edge(Graph* G, int x, int y) { G->edges[G->m].x=x; G->edges[G->m].y=y; G->m++; } bai2 void add_edge(Graph* G, int x, int y) { if(x<1||x>G->n || y<1 || y>G->n) { return; } G->edges[G->m].x=x; G->edges[G->m].y=y; G->m++; } bai3 void add_edge(Graph* G, int e, int x, int y) { if(x==y) { G->A[x][e]=2 ; } if(G->A[x][e] && G->A[y][e]) { G->A[x][e]=2; G->A[y][e]=2; } else { G->A[x][e]=1; G->A[y][e]=1; } } 4 void add_edge(Graph* G, int e, int x, int y) { G->A[x][e]=1; G->A[y][e]=1; } 5 List neighbors(Graph* G, int x) { List L; make_null(&L); int e, y; for (y = 1; y <= G->n; y++) { if (x == y) continue; for (e = 1; e <= G->m; e++) if (G->A[x][e] > 0 && G->A[y][e] > 0) { push_back(&L, y); break; } } return L; } 6 int edgeCount(Graph *G) { int i, j, count=0; for(i=1; i<=G->n; i++) { for(j=1; j<=G->n; j++) { count+=G->A[i][j]; } } return count/2; } 7 #include<stdio.h> #define MAX_N 100 typedef struct{ int n; int A[MAX_N][MAX_N]; }Graph; void init_graph(Graph *G, int n){ int i,j; G->n=n; for ( i=1; i<= n; i++){ for ( j=1; j<= n; j++) G->A[i][j]=0; } } void add_edge(Graph *G, int x, int y){ G->A[x][y]=1; G->A[y][x]=1; } int main(){ int e,n,m,u,v,i,j; Graph G; freopen("dt1.txt","r",stdin); scanf("%d%d", &n, &m); init_graph(&G, n); for(e=1; e<=n; e++){ scanf("%d%d",&u ,&v); add_edge(&G, u, v); } for (i=1; i<=G.n; i++){ for (j=1; j<=G.n; j++){ printf("%d ",G.A[i][j]); } printf("\n"); } return 0; } 8 #include<stdio.h> typedef struct{ int n,m; int A[100][100]; }Graph; void init_graph(Graph *G, int x){ int i,j; G->n=x; for(i=1;i<=G->n;i++){ for(j=1;j<=G->n;j++){ G->A[i][j]=0; } } } void add_edge(Graph *G, int x, int y){ G->A[x][y]=1; G->A[y][x]=1; G->m++; } int count(Graph *G,int x){ int i,def=0; for(i=1;i<=G->n;i++){ def+=G->A[x][i]; } return def; } int main(){ Graph G; int n, m, u, v, e; scanf("%d %d", &n, &m); init_graph(&G, n); for (e = 0; e < m; e++) { scanf("%d %d", &u, &v); add_edge(&G, u, v); } int i, min=999,num; for(i=1;i<=u;i++){ if(count(&G,i)<min){ min=count(&G,i); num=i; } } printf("%d %d",num,min); return 0; }
Editor is loading...