Quipex icon

temp2

Quipex | PRO | 04/03/17 01:27:45 PM UTC | 0 ⭐ | 398 👁️ | Never ⏰ | []
C++ |

1.98 KB

|

None

|

0 👍

/

0 👎

#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <vector>
#include <cmath>
#include <cstring>
#include <string>
#include <iterator>
#include <iomanip>
using namespace std;
 
#define sqr(x) ((x)*(x))
#define cbr(x) ((x)*(x)*(x))
#define rep(c, i, n) for((i)=(c); (i)<(n); (i)++)
struct pt{long long x,y;};
double vecmul(pt a, pt b){ /*Векторное умножение А*В*/ return (a.x*b.y - b.x*a.y); } //скалярное умножение a*b = |a|*|b|*cos(a,b)
 
double dist(double ax, double ay, double bx, double by) { return sqrt(sqr(ax - bx) + sqr(ay - by)); }
 
//DBG
template<typename T, typename T2>void printarr(T  a[], T2 sz, T2 beg = 0) { for (T2 i = beg; i<sz; i++) cout << a[i] << " "; cout << endl; }
#define DBG(a)         cout<<#a<<"="<<(a)<<"\n"
#define DBG2(a,b)       cout<<#a<<"="<<(a)<<", "<<#b<<"="<<(b)<<"\n"
#define DBG3(a,b,c)     cout<<#a<<"="<<(a)<<", "<<#b<<"="<<(b)<<", "<<#c<<"="<<(c)<<"\n"
 
//Files
#define FILE_MODE(FILE) freopen(FILE".in", "r", stdin), freopen(FILE".out", "w", stdout)
 
//Constants
#define PI    3.1415926535897932
#define INF   1011111111
#define LLINF 1000111000111000111LL
#define eps   1e-14
#define mod   1000000007
#define ll long long
#define ull unsigned long long
//-------------------------------------------------
#define N 100010
//7 9 1 7 3 6 1 3 6 7 1 4 5 6  1 2 2 5 3 5  4 7
 
int n,m;
vector<int> graph[N];
int visited[N];
void dfs(int v);
int node=0;
 
int main(){
    cin>>n>>m;
    int i,x,y,j;
    rep(0,i,m){
        cin>>x>>y;
        x--;y--;
        graph[x].push_back(y);
        graph[y].push_back(x);
    }
    memset(visited, 0, sizeof visited);
    rep(0,i,n){
        if(visited[i]==0){
            node++;
            dfs(i);
        }
    }
    cout << node << endl;
    return 0;
}
 
void dfs(int v){
    visited[v]=node;
    for(int i=0;i<graph[v].size();i++){
        if(visited[graph[v][i]]==0){
            dfs(graph[v][i]);
        }
    }
}

Comments