Thông tin tài liệu
M¹nh D¬ng Biªn So¹n Bé M«n CÊu Tróc D÷ LiÖu Gi¶i ThuËt 2012 §ª Sè 15 Trong Bé §Ò ¤n TËp #include<iostream.h> #include<fstream.h> #include<math.h> #include<conio.h> #include<time.h> #include<string.h> #include<stdio.h> ifstream datain("C:/cau truc du lieu/dethi/dothi15.in.txt"); /* Chu Trinh Euler Vo Huong */ char S[100][200]; int a[100][100],n,x[100]; void NhapDL(int &n) { datain>>n; for(int i=0;i<=n;i++) datain.getline(S[i],200,'\n'); } int ket(char S) { int k=int (S)-int ('0'); return k; } int chuyen(char S[]) {int j=0,k=0; for(int i=strlen(S)-1;i>=0;i ) {k+=ket(S[i])*pow(10,j);j++;} return k; } void ChuyenKe() { for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) a[i][j]=0; for(int i=1;i<=n;i++) { int j=0; while(S[i][j]!='\0') { if(S[i][j]>='0'&&S[i][j]<='9') { char SS[200]; int k=0; while(S[i][j]>='0'&&S[i][j]<='9') { SS[k]=S[i][j]; k++; j++; } SS[k]='\0';j++; a[i][chuyen(SS)]=1; a[chuyen(SS)][i]=1; } } } } void DFS(int i) { x[i]=1; for(int j=1;j<=n;j++) if(x[j]==0&&a[i][j]==1)DFS(j); } int LienThong() { DFS(1); for(int i=1;i<=n;i++) if(x[i]==0)return 0; return 1; } int Bac() { int deg,i,j; for(i=1;i<=n;i++) { deg=0; for(int j=1;j<=n;j++) deg+=a[i][j]; if(deg%2)return 0; } return 1; } void CTEuler(int ce[]) { int st[100*100],i,j,h,k,t; t=1; st[t]=1; k=0; while(t>0) { h=st[t]; j=0; for(i=1;i<=n;i++) if(a[h][i]==1) { t++; st[t]=i; j=i; a[h][i]=0; a[i][h]=0; break; } if(j==0) { k++; ce[k]=h; t ; } } for(i=k;i>1;i ) cout<<ce[i]<<" - "; cout<<ce[1]<<endl; } main() { int ce[100]; NhapDL(n); ChuyenKe(); if(LienThong()==0||Bac()==0) cout<<"G khong la do thi Euler"<<endl; else CTEuler(ce); } . TËp #include<iostream.h> #include<fstream.h> #include<math.h> #include<conio.h> #include<time.h> #include<string.h> #include<stdio.h> ifstream datain("C:/cau truc du lieu/dethi/dothi15.in.txt"); /* Chu Trinh Euler Vo Huong */ char S[100][200]; int a[100][100],n,x[100]; void. "; cout<<ce[1]<<endl; } main() { int ce[100]; NhapDL(n); ChuyenKe(); if(LienThong()==0||Bac()==0) cout<<"G khong la do thi Euler"<<endl; else CTEuler(ce); }
Ngày đăng: 27/07/2015, 08:28
Xem thêm: ĐỀ THI MÔN Cấu Trúc Dữ Liệu và Giải Thuật học viện công nghệ bưu chính viễn thông (15), ĐỀ THI MÔN Cấu Trúc Dữ Liệu và Giải Thuật học viện công nghệ bưu chính viễn thông (15)