首页 > 代码库 > 找环 存在问题
找环 存在问题
#include<iostream> int num,zu; int a[50][2]={0}; int visit[11]={0}; int data[11][11]={0}; int tou=0; int wei=1; int last; int flag=0; int k=0; typedef struct node { int x; int pre; }node; node point[100000]={0}; void prin(int i) { if(i==-1) return; //printf("(%d,%d)\n",dui[i].x ,dui[i].y ); printf("%d",point[i].x); prin(point[i].pre); } void bfs() { while(tou<wei) { // while(point[tou].pre--) //{ // if(point[tou].x==point[point[tou].pre].x) // { flag=1; // last=tou; // /*printf("%d",ouwei); // printf("%d",point[wei].pre); // printf("\n");*/ // prin(last); // return; // } //} for(int k=1;k<=num;k++) { if(data[point[tou].x][k]==1) { data[point[tou].x][k]=0; point[wei].x=k; //printf("%d",point[wei].x); point[wei].pre=tou; wei++; } } tou++; } } int main() { freopen("input.txt","r",stdin); scanf("%d%d",&num,&zu); for(int i=0;i<zu;i++) { for(int j=0;j<2;j++) { scanf("%d",&a[i][j]);} } for(int i=0;i<=zu;i++) { data[a[i][0]][a[i][1]]=1; } for(int i=1;i<=num;i++) { for(int j=1;j<=num;j++) { printf("%d",data[i][j]); } printf("\n"); } for(int i=1;i<=num;i++) for(int j=1;j<=num;j++) { if(flag==0){ if(data[i][j]==1) { // data[i][j]=0; point[tou].x=i; point[tou].pre=-1; /*point[wei].x=j; point[wei++].pre=tou;*/ bfs(); } } } }
找环 存在问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。