Submission #567862

# Submission time Handle Problem Language Result Execution time Memory
567862 2022-05-24T09:37:13 Z maomao90 Flights (JOI22_flights) C++17
15 / 100
55 ms 9528 KB
#include "Ali.h"
#include <bits/stdc++.h>
using namespace std;

#define REP(i, j, k) for (int i = j; i < k; i++)
#define RREP(i, j, k) for (int i = j; i >= k; i--)

template <class T>
bool mnto(T &a, const T b) {return a > b ? a = b, 1 : 0;}
template <class T>
bool mxto(T &a, const T b) {return a < b ? a = b, 1 : 0;}

typedef long long ll;
#define FI first
#define SE second
typedef pair<int, int> ii;
typedef pair<ll, ll> pll;
typedef tuple<int, int, int> iii;
#define ALL(x) x.begin(), x.end()
#define SZ(x) (int) x.size()
#define pb push_back
typedef vector<int> vi;
typedef vector<ii> vii;
typedef vector<ll> vll;

#ifndef DEBUG
#define cerr if(0) cerr
#endif

namespace {
	const int MAXN = 150005;
	const int INF = 1000000005;
	const ll LINF = 1000000000000000005;
	int n;
	vi adj[MAXN];
	int rt;

	int pre[MAXN], pst[MAXN], mppre[MAXN], p[MAXN], ptr;
	void dfs(int u, int cp) {
		p[u] = cp;
		pre[u] = ptr++;
		mppre[pre[u]] = u;
		for (int v : adj[u]) {
			if (v == cp) continue;
			dfs(v, u);
		}
		pst[u] = ptr;
	}
}

void Init(int N, vi U, vi V) {
	n = N;
	REP (i, 0, n) {
		adj[i].clear();
	}
	REP (i, 0, n - 1) {
		adj[U[i]].pb(V[i]);
		adj[V[i]].pb(U[i]);
	}
	ptr = 0;
	REP (i, 0, n) {
		if (adj[i].size() == 1) {
			rt = i;
			dfs(i, -1);
			break;
		}
	}
	REP (i, 0, n) {
		SetID(i, pre[i]);
	}
}

string SendA(string S) {
	string res = "";
	REP (i, 1, n) {
		int u = mppre[i - 1], v = mppre[i];
		while (pst[u] <= pre[v]) {
			u = p[u];
			res += '0';
		}
		res += '1';
	}
	return res;
}
#include "Benjamin.h"
#include <bits/stdc++.h>
using namespace std;

#define REP(i, j, k) for (int i = j; i < k; i++)
#define RREP(i, j, k) for (int i = j; i >= k; i--)

template <class T>
bool mnto(T &a, const T b) {return a > b ? a = b, 1 : 0;}
template <class T>
bool mxto(T &a, const T b) {return a < b ? a = b, 1 : 0;}

typedef long long ll;
#define FI first
#define SE second
typedef pair<int, int> ii;
typedef pair<ll, ll> pll;
typedef tuple<int, int, int> iii;
#define ALL(x) x.begin(), x.end()
#define SZ(x) (int) x.size()
#define pb push_back
typedef vector<int> vi;
typedef vector<ii> vii;
typedef vector<ll> vll;

#ifndef DEBUG
#define cerr if(0) cerr
#endif

namespace {
	const int MAXN = 150005;
	const int INF = 1000000005;
	const ll LINF = 1000000000000000005;
	int n, x, y;
	vi adj[MAXN];
	int p[MAXN], ptr;
	int dis[MAXN];
	void dfs(int u, int p) {
		for (int v : adj[u]) {
			if (v == p) continue;
			dis[v] = dis[u] + 1;
			dfs(v, u);
		}
	}
}

string SendB(int N, int X, int Y) {
	n = N; x = X; y = Y;
	string s(20, '0');
	return s;
}

int Answer(string T) {
	REP (i, 0, n) {
		adj[i].clear();
		dis[i] = 0;
	}
	int u = 0;
	int ptr = 1;
	for (char c : T) {
		if (c == '1') {
			p[ptr] = u;
			adj[u].pb(ptr);
			adj[ptr].pb(u);
			u = ptr++;
		} else {
			u = p[u];
		}
	}
	dfs(x, -1);
	return dis[y];
}

Compilation message

grader_ali.cpp:10:8: warning: '{anonymous}::_randmem' defined but not used [-Wunused-variable]
   10 |   char _randmem[12379];
      |        ^~~~~~~~

Benjamin.cpp:36:15: warning: '{anonymous}::ptr' defined but not used [-Wunused-variable]
   36 |  int p[MAXN], ptr;
      |               ^~~
# Verdict Execution time Memory Grader output
1 Correct 5 ms 7568 KB Output is correct
2 Correct 6 ms 7568 KB Output is correct
3 Correct 5 ms 7568 KB Output is correct
4 Correct 6 ms 7568 KB Output is correct
5 Correct 6 ms 7600 KB Output is correct
6 Correct 14 ms 8696 KB Output is correct
7 Correct 13 ms 8652 KB Output is correct
8 Correct 12 ms 8624 KB Output is correct
9 Correct 14 ms 8636 KB Output is correct
10 Correct 12 ms 8848 KB Output is correct
11 Correct 10 ms 8560 KB Output is correct
12 Correct 14 ms 8652 KB Output is correct
13 Correct 12 ms 8708 KB Output is correct
14 Correct 11 ms 8692 KB Output is correct
15 Correct 12 ms 9396 KB Output is correct
16 Correct 13 ms 8744 KB Output is correct
# Verdict Execution time Memory Grader output
1 Partially correct 7 ms 7568 KB Output is partially correct
2 Partially correct 55 ms 9528 KB Output is partially correct
3 Halted 0 ms 0 KB -