QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#912764#2810. SpeedrunwizardMarshallCompile Error//C++141.4kb2025-02-23 21:28:152025-02-23 21:28:17

Judging History

This is the latest submission verdict.

  • [2025-02-23 21:28:17]
  • Judged
  • [2025-02-23 21:28:15]
  • Submitted

speedrun

#include "speedrun.h"
#include <bits/stdc++.h>
using namespace std;

vector <int> Gr[1005];
int fat[1005], dfn[1005], rnk[1005];
int dfc;
void dfs(int x, int fa) {
	fat[x] = fa;
    rnk[dfn[x] = ++dfc] = x;
	for (auto &y : Gr[x]) {
		if (y != fa) {
			dfs(y, x);
        }
    }
    return;
}
void assignHints(int subtask, int n, int A[], int B[]) {
	for (int i = 1; i < n; i++) {
		int u = A[i];
        v = B[i];
		Gr[u].emplace_back(v);
		Gr[v].emplace_back(u);
	}
	dfs(1, 0);
	setHintLen(20);
	for (int i = 1; i <= n; i++) {
		int f = fat[i], x = dfn[i] == n ? -1 : rnk[dfn[i] + 1];
		for (int k = 0; k < 10; k++) {
            setHint(i, k + 1, f >> k & 1);
        }
        for (int k = 0; k < 10; k++) {
            setHint(i, k + 11, x >> k & 1);
	    }
    }
    return;
}

int getFa() {
	int f = 0;
	for (int i = 0; i < 10; i++) {
        f |= getHint(i + 1) << i;
    }
    return f == 1023 ? -1: f;
}
int getNxt() {
	int nxt = 0;
	for (int i = 0; i < 10; i++) {
        nxt |= getHint(i + 11) << i;
    }
    return nxt == 1023 ? -1 : nxt;
}
void speedrun(int subtask, int n, int start) {
	int fa, x = start;
	while ((fa = getFa())) {
        goTo(fa);
        x = fa;
	}
    for (int k = 1; k < n; k++){
		int nxt = getNxt();
		while (!goTo(nxt)) {
            goTo(fa = getFa());
            x = fa;
        }
        x = nxt;
	}
    return;
}

詳細信息

speedrun.code: In function ‘void assignHints(int, int, int*, int*)’:
speedrun.code:21:9: error: ‘v’ was not declared in this scope
   21 |         v = B[i];
      |         ^
grader_speedrun.cpp: In function ‘int readvalue()’:
grader_speedrun.cpp:9:9: warning: ignoring return value of ‘int fscanf(FILE*, const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
    9 |   fscanf(input, "%d", &val);
      |   ~~~~~~^~~~~~~~~~~~~~~~~~~