360笔试--找老乡

来源:互联网 发布:小米手机照片导入mac 编辑:程序博客网 时间:2024/05/08 13:31
#include <stdio.h>#include <stdlib.h>#include <string>#include <vector>#include <set>#include <iostream>#include <map>#include <string.h>#include <algorithm>using namespace std;struct relation{    relation(int x, int y)    {        x_ = x;        y_ = y;    }    int x_;    int y_;};void findp(vector<relation>& rvec, int n, int p, vector<int>& pvec){    int i;    //vector<int> ivec;    int cnt = 0;    for(i = 0; i < n; ++i)    {        if(rvec[i].x_ == p)        {            //printf("***\n");            //ivec.push_back(rvec[i].y_);            if(find(pvec.begin(), pvec.end(), rvec[i].y_) == pvec.end())            {                pvec.push_back(rvec[i].y_);                findp(rvec, n, rvec[i].y_, pvec);            }                    }    }}int main(int argc,char* argv[]){    int m, n;    int i;    vector<relation> rvec;    int sum;    vector<int> svec;//sum set    vector<int> pvec;    while(1)    {        scanf("%d%d", &m, &n);        if(m == 0 && n == 0)        {            break;        }        for(i = 0; i < n; ++i)        {            int x, y;            scanf("%d%d", &x, &y);            if(x < y)            {                relation r(x, y);                rvec.push_back(r);            }else            {                relation r(y, x);                rvec.push_back(r);            }                    }        findp(rvec, n, 1, pvec);        printf("%d\n", pvec.size());        rvec.clear();        pvec.clear();    }    return 0;}

0 0
原创粉丝点击