96232024-02-23 15:02:57PallanekPéterKaktuszgráfcpp17Elfogadva 50/504ms3744 KiB
#include<bits/stdc++.h>
using namespace std;

vector<int> graf[1001];
vector<int> szin;
int p[1001];
int mx=0;

int hossz(int a, int v){
    int h=0;
    while(a!=v){
        a=p[a]; h++;
    }
    return h+1;
}

void mk(int u){
    if (szin[u]==-1){
        szin[u]=0;
        for(int v:graf[u]){
            if (szin[v]==1){mx=max(mx,hossz(v,u));}
            if (szin[v]==-1){
                mk(v);
                p[v]=u;
            }
        }
    }
    szin[u]=1;
}

int main(){
    int n,m; cin >> n >> m;
    szin.assign(n+1,-1);
    for(int i=0;i<m;i++){
        int u,v; cin >> u >> v;
        graf[u-1].push_back(v-1);
        graf[v-1].push_back(u-1);
    }
    mk(1); cout << mx;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/03ms1900 KiB
2Elfogadva0/03ms2268 KiB
3Elfogadva2/23ms2228 KiB
4Elfogadva2/23ms2484 KiB
5Elfogadva2/23ms2656 KiB
6Elfogadva2/23ms2632 KiB
7Elfogadva2/23ms2804 KiB
8Elfogadva2/23ms2984 KiB
9Elfogadva2/23ms3348 KiB
10Elfogadva2/23ms3104 KiB
11Elfogadva2/23ms3364 KiB
12Elfogadva2/23ms3304 KiB
13Elfogadva2/23ms3320 KiB
14Elfogadva2/23ms3320 KiB
15Elfogadva2/23ms3476 KiB
16Elfogadva2/23ms3324 KiB
17Elfogadva2/23ms3524 KiB
18Elfogadva2/23ms3456 KiB
19Elfogadva3/34ms3460 KiB
20Elfogadva3/33ms3448 KiB
21Elfogadva3/33ms3600 KiB
22Elfogadva3/33ms3744 KiB
23Elfogadva3/33ms3728 KiB
24Elfogadva3/33ms3604 KiB