Mai intai trebuie sa te autentifici.
Cod sursa(job #1597653)
| Utilizator | Data | 12 februarie 2016 11:01:44 | |
|---|---|---|---|
| Problema | Floyd-Warshall/Roy-Floyd | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.77 kb |
#include <iostream>
#include <fstream>
using namespace std;
void citire(int A[][100], int &N)
{
ifstream fin("matrice_p");
int i,j;
fin>>N;
for(i=1;i<=N;i++)
for(j=1;j<=N;j++)
fin>>A[i][j];
}
void Roy_Varshall( int A[][100], int N)
{
int i,j,k;
for(k=1;k<=N;k++)
for(i=1;i<=N;i++)
for(j=1;j<=N;j++)
if(A[i][j]>A[i][k]+A[k][j])
A[i][j]=A[i][k]+A[k][j];
}
void afis(int A[][100], int N)
{
ofstream fout("matrice_p_r");
int i,j;
for(i=1;i<=N;i++)
{
for(j=1;j<=N;j++)
fout<<A[i][j]<<" ";
fout<<endl;
}
}
int main()
{
int N , A[100][100],i,j;
citire(A,N);
Roy_Varshall(A,N);
afis(A,N);
return 0;
}
