Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <fstream>
- using namespace std;
- ifstream f("componenteconexe.in");
- ofstream g("componenteconexe.out");
- int a[101][101], c[101], viz[101];
- int main()
- {
- int n, x, y, i, j, p, u, z, nrc;
- f>>n;
- while(f>>x>>y)
- a[x][y] = a[y][x] = 1;
- nrc = 0;
- for(i = 1; i <= n; i++)
- if(!viz[i])
- {
- viz[i] = ++nrc;
- c[1] = i;
- p = u = 1;
- while(p <= u)
- {
- z = c[p++];
- for(j = 1; j <= n; j++)
- if(a[z][j] && !viz[j])
- {
- viz[j] = nrc;
- c[++u] = j;
- }
- }
- }
- g<<nrc<<'\n';
- for(i = 1; i <= nrc; i++)
- {
- for(j = 1; j <= n; j++)
- if(viz[j] == i)
- g<<j<<' ';
- g<<'\n';
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement