Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <fstream>
- #define N 1001
- using namespace std;
- int n,a[N][N],
- x[N], /// coada
- v[N], /// vizitat
- d[N]; /// distantele la varfuri
- int st,dr;
- int main()
- {
- int i,j,m,k,p;
- ifstream f("epidemie.in");
- f>>n>>m;
- while(m--)
- f>>i>>j,a[i][j]=a[j][i]=1;
- f>>k;
- while(k--)
- f>>p,x[++dr]=p,v[p]=d[p]=1;
- f.close();
- st=1;
- while(st<=dr)
- {
- int k=x[st];
- for(int i=1;i<=n;++i)
- if(v[i]==0&&a[k][i]==1)
- ++dr,v[i]=1,x[dr]=i,d[i]=d[k]+1;
- ++st;
- }
- int C=0;
- for(int i=1;i<=n;++i)
- if(d[i]>C)
- C=d[i];
- ofstream g("epidemie.out");
- g<<C;
- g.close();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement