Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #pragma warning(disable:4996)
- #include <stdio.h>
- #include <iostream>
- #include <conio.h>
- using namespace std;
- int b[20][20];
- int parcurs[20];
- int found = 0, add = 0;
- char *oras[] = {
- "Neamt", "Iasi", "Vaslui", "Urziceni", "Harsova",
- "Eforie", "Bucuresti", "Giurgiu", "Pitesti",
- "Fagaras", "Craiova", "Drobeta","Mehadia","Lugoj", "Timisoara", "Arad",
- "Zerind", "Oradea", "Sibiu", "Ramnicu valcea", "Lugoj",
- };
- int br = 0;
- void adancime(int x, int y) {
- cout << "[" << x << "," << y << "]";
- add++;
- cout << "\n " << add<<"\n";
- if (x == y) {
- cout << "\nnr. de localitati distanta: " << add
- << "\n orase din drum:";
- parcurs[add - 1] = x;
- for (int j = 0;j <= add;j++)
- cout << oras[parcurs[j]] << " ";
- cout << "\n";
- }
- for (int i = 0;i < 20;i++) {
- cout << "." << i << ".";
- parcurs[add-1] = x;
- for (int j = 0;j < add-1;j++) {
- if (parcurs[j] == i) {
- cout << "{" << i << "," << j << "}";
- br = 1;
- break;
- }
- }
- if (br == 1) {
- br = 0;
- cout << ";";
- continue;
- }
- cout << "[" << i << "]\n";
- if (b[x][i] == 1) {
- adancime(i,y);
- }
- }
- add--;
- cout << "\n " << add << " ---\n";
- }
- void main() {
- for (int i = 0;i < 20;i++)
- for (int j = 0;j < 20;j++)
- b[i][j] = 0;
- b[0][1] = 1;
- b[1][0] = 1;
- b[1][2] = 1;
- b[2][1] = 1;
- b[2][3] = 1;
- b[3][2] = 1;
- b[3][4] = 1;
- b[4][3] = 1;
- b[4][5] = 1;
- b[5][4] = 1;
- b[3][6] = 1;
- b[6][3] = 1;
- b[6][7] = 1;
- b[7][6] = 1;
- b[6][8] = 1;
- b[8][6] = 1;
- b[6][9] = 1;
- b[9][6] = 1;
- b[8][10] = 1;
- b[10][8] = 1;
- b[8][19] = 1;
- b[10][19] = 1;
- b[19][10] = 1;
- b[9][18] = 1;
- b[18][9] = 1;
- b[19][18] = 1;
- b[18][19] = 1;
- b[18][17] = 1;
- b[17][18] = 1;
- b[18][15] = 1;
- b[15][18] = 1;
- b[15][16] = 1;
- b[16][15] = 1;
- b[16][17] = 1;
- b[17][16] = 1;
- b[15][14] = 1;
- b[14][15] = 1;
- b[14][13] = 1;
- b[13][14] = 1;
- b[13][12] = 1;
- b[12][11] = 1;
- b[11][12] = 1;
- b[11][10] = 1;
- b[10][11] = 1;
- for (int i = 0;i < 20;i++) {
- for (int j = 0;j < 20;j++) {
- cout << b[i][j] << " ";
- }
- cout << endl;
- }
- int n;
- cout << "\nnume plecare\n";
- cin >> n;
- cout << oras[n] << "\nare drum catre\n" << endl;
- for (int i = 0;i < 20;i++) {
- if (b[i][n] == 1 || b[n][i] == 1) {
- cout << oras[i] << endl;
- }
- }
- int m;
- cout << "\noras sosire\n";
- cin >> m;
- cout << "\nruta este:\n";
- for (int i = 0;i < 20;i++)
- parcurs[i] = -1;
- adancime(n, m);
- getch();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement