2392021-03-05 14:36:18balintttKaktuszgráfcpp14Accepted 50/506ms2240 KiB
#include<bits/stdc++.h>

using namespace std;

class pont{
public:
    vector<int> hova;
    int index;
    void dfs();
    bool volt = 0;
};

int n, m, a, b;

vector<pont> p;

int tav[1000];

int er = 0;

void pont::dfs(){
    if(volt){
        //cout << index << ' ' << ' ' << tav[index] << '\n';
        er = max(er, tav[index]+1);
    } else {
        for(int i=0;i<n;i++){
            if(tav[i] != 0) ++tav[i];
        }
        /*cout << index << ':';
        for(int i=0;i<n;i++){
            cout << tav[i] << ' ';
        }
        cout << '\n';*/
        tav[index] = 1;
        volt = 1;
        //cout << index << ' ' << hova.size() << '\n';
        for(int i : hova){
            //cout << index << ' ' << i << '\n';
            p[i].dfs();
        }
        tav[index] = 0;
        for(int i=0;i<n;i++){
            if(tav[i] != 0) --tav[i];
        }
    }
}

int main(){
    cin >> n >> m;
    p.resize(n);
    for(int i=0;i<n;i++){
        p[i].index=i;
    }
    for(int i=0;i<m;i++){
        cin >> a >> b;
        --a; --b;
        p[a].hova.push_back(b);
        p[b].hova.push_back(a);
    }
    p[0].dfs();
    cout << er-1 << '\n';
return 0;
}
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/02ms1808 KiB
2Accepted0/03ms1864 KiB
3Accepted2/23ms1944 KiB
4Accepted2/23ms1964 KiB
5Accepted2/24ms1976 KiB
6Accepted2/24ms2000 KiB
7Accepted2/24ms2024 KiB
8Accepted2/24ms2016 KiB
9Accepted2/24ms2032 KiB
10Accepted2/24ms2040 KiB
11Accepted2/24ms2052 KiB
12Accepted2/24ms2060 KiB
13Accepted2/24ms2076 KiB
14Accepted2/24ms2088 KiB
15Accepted2/24ms2096 KiB
16Accepted2/24ms2108 KiB
17Accepted2/24ms2124 KiB
18Accepted2/24ms2144 KiB
19Accepted3/34ms2160 KiB
20Accepted3/36ms2196 KiB
21Accepted3/34ms2216 KiB
22Accepted3/34ms2228 KiB
23Accepted3/34ms2232 KiB
24Accepted3/34ms2240 KiB