Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <vector>#include <iostream>struct lnode { int left, right ; };lnode level_nodes[101][101];int level[101];int child[101];int parent[101];bool is_leaf[101];int dist[101][101];int main () {int N, M, K, edges = 1;std::cin >> N >> M >> K;std::vector<int> A(M);for (auto & a : A)std::cin >> a;int last = 0, cur;for (int i = 0; i < M; i++) {last = 0;for (int j = 0; j < A[i]; j++) {std::cin >> cur;level[cur] = i;level_nodes[i][cur].left = last;level_nodes[i][last].right = cur;last = cur;}level_nodes[i][0].left = cur;}std::vector<int> leaves(K);for (auto & a : leaves) {