Advertisement
a53

Epidemie

a53
Feb 5th, 2018
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.64 KB | None | 0 0
  1. #include <fstream>
  2. #define N 1001
  3. using namespace std;
  4. int n,a[N][N],
  5. x[N], /// coada
  6. v[N], /// vizitat
  7. d[N]; /// distantele la varfuri
  8. int st,dr;
  9.  
  10. int main()
  11. {
  12. int i,j,m,k,p;
  13. ifstream f("epidemie.in");
  14. f>>n>>m;
  15. while(m--)
  16. f>>i>>j,a[i][j]=a[j][i]=1;
  17. f>>k;
  18. while(k--)
  19. f>>p,x[++dr]=p,v[p]=d[p]=1;
  20. f.close();
  21. st=1;
  22. while(st<=dr)
  23. {
  24. int k=x[st];
  25. for(int i=1;i<=n;++i)
  26. if(v[i]==0&&a[k][i]==1)
  27. ++dr,v[i]=1,x[dr]=i,d[i]=d[k]+1;
  28. ++st;
  29. }
  30. int C=0;
  31. for(int i=1;i<=n;++i)
  32. if(d[i]>C)
  33. C=d[i];
  34. ofstream g("epidemie.out");
  35. g<<C;
  36. g.close();
  37. return 0;
  38. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement