Untitled
unknown
plain_text
16 days ago
1.6 kB
5
Indexable
#include<iostream> #include<cstring> #define N 20 using namespace std; int a[N][N]; char s[100]; int k; int main() { string orase[N]={"Arad","Zerind","Oradea","Sibiu","Fagaras","Timisoara","Lugoj","Mehadia","Drobeta","Craiova","Ramnicu Valcea","Pitesti","Bucuresti","Giurgiu","Urziceni","Hirsova","Eforie","Vaslui","Iasi","Neamt"}; a[0][1]=1; a[0][3]=1; a[0][5]=1; a[1][2]=1; a[2][3]=1; a[3][4]=1; a[3][10]=1; a[4][12]=1; a[5][6]=1; a[6][7]=1; a[7][8]=1; a[8][9]=1; a[9][11]=1; a[10][11]=1; a[11][12]=1; a[12][13]=1; a[12][14]=1; a[14][15]=1; a[15][16]=1; a[14][17]=1; a[17][18]=1; a[18][19]=1; for(int i=0;i<N;i++) for(int j=0;j<N;j++) if(a[i][j]==1) a[j][i]=1; bool gasit=false; int viz[N],noduri[N],parinte[N]; int nrNoduri=0,start=0,stop=12; for(int i = 0; i < N; i++) viz[i]= 0; noduri[nrNoduri++]=start; viz[start]=1; while((nrNoduri>0)&&(gasit==false)) { int nod_curent=noduri[0]; for (int i = 0; i < nrNoduri; i++) cout<<orase[noduri[i]] <<" "; cout << endl; //cout<<orase[nod_curent]<<" "; for(int i=0;i<nrNoduri-1;i++) noduri[i]=noduri[i+1]; nrNoduri--; if(nod_curent==stop) gasit=true; else for(int i=0;i<N;i++) if(a[nod_curent][i]==1 && viz[i]==0) { noduri[nrNoduri++]=i; viz[i]=1; } } }
Editor is loading...
Leave a Comment