Submission #230654


Source Code Expand

#include <stdio.h>

int g[100001][100001] = {0};
int n, q;

int max(int a, int b) {
  return a > b ? a : b;
}

int count_length(int crt, int pre, int goal) {
  int max_length = -200000;
  if (crt == goal) {
    return 1;
  } else {
    for (int i = 1; i <= n; ++i) {
      if (i != pre && g[crt][i]) {
        max_length = max(count_length(i, crt, goal), max_length);
      }
    }
    return 1 + max_length;
  }
}

int main() {
  int a, b;

  // cin >> n;
  scanf("%d", &n);
  for(int i = 0; i < n - 1; ++i) {
    //cin >> a >> b;
    scanf("%d %d", &a, &b);
    g[a][b] = 1;
    g[b][a] = 1;
  }

  // cin >> q;
  scanf("%d", &q);
  for (int i = 0; i < q; ++i) {
    // cin >> a >> b;
    scanf("%d %d", &a, &b);
    // cout << count_length(b, a, a) << endl;
    printf("%d\n", count_length(b, a, a));
  }
}

Submission Info

Submission Time
Task D - 閉路
User gam0022
Language C (GCC 4.6.4)
Score 0
Code Size 854 Byte
Status CE

Compile Error

./Main.c: In function ‘count_length’:
./Main.c:15:5: error: ‘for’ loop initial declarations are only allowed in C99 mode
./Main.c:15:5: note: use option -std=c99 or -std=gnu99 to compile your code
./Main.c: In function ‘main’:
./Main.c:29:3: error: ‘for’ loop initial declarations are only allowed in C99 mode
./Main.c:38:12: error: redefinition of ‘i’
./Main.c:29:11: note: previous definition of ‘i’ was here
./Main.c:38:3: error: ‘for’ loop initial declarations are only allowed in C99 mode
./Main.c:28:8: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
./Main.c:31:10: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
./Main.c:37:8: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
./Main.c:40:10: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]