46472023-03-30 14:11:32ZsBalazsKaktuszgráfcpp17Accepted 50/504ms5108 KiB
#include <bits/stdc++.h>
using namespace std;

vector<vector<int>> graph;
vector<int> volt;

int maxi = 0;

void bejar(int current, int honnan, int mennyi) {
  if (volt[current] != -1) {
    // voltam mar itt
    
    maxi = max(maxi, mennyi - volt[current]);
    
    return;
  }
  
  volt[current] = mennyi;
  
  for (int szomszed : graph[current]) {
    if (honnan == szomszed) continue; 
    
    bejar(szomszed, current, mennyi+1);
  }
}

int main() {
  int n, m;
  cin >> n >> m;
  
  graph.resize(n);
  volt.assign(n, -1);
  
  for (int i = 0; m > i; i++) {
    int a, b;
    cin >> a >> b;
    
    a--;
    b--;
    
    graph[a].push_back(b);
    graph[b].push_back(a);
  }
  
  bejar(0, 0, 0);
  
  cout << maxi << endl;
  
	return 0;
}
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/03ms1876 KiB
2Accepted0/03ms2092 KiB
3Accepted2/23ms2452 KiB
4Accepted2/23ms2668 KiB
5Accepted2/23ms2876 KiB
6Accepted2/23ms3028 KiB
7Accepted2/23ms3140 KiB
8Accepted2/23ms3420 KiB
9Accepted2/23ms3632 KiB
10Accepted2/23ms3840 KiB
11Accepted2/23ms4060 KiB
12Accepted2/24ms4020 KiB
13Accepted2/23ms4276 KiB
14Accepted2/23ms4424 KiB
15Accepted2/23ms4500 KiB
16Accepted2/23ms4444 KiB
17Accepted2/24ms4692 KiB
18Accepted2/23ms4780 KiB
19Accepted3/34ms5092 KiB
20Accepted3/33ms5080 KiB
21Accepted3/33ms5104 KiB
22Accepted3/33ms5108 KiB
23Accepted3/33ms5108 KiB
24Accepted3/33ms5104 KiB