Submission #835750

# Submission time Handle Problem Language Result Execution time Memory
835750 2023-08-23T19:14:15 Z Josia Toy Train (IOI17_train) C++17
0 / 100
2000 ms 1744 KB
#include "train.h"
#include <bits/stdc++.h>

using namespace std;

vector<vector<int>> graph;
vector<bool> own;
vector<bool> station;


vector<int> dp;
vector<bool> vis;

int dfs(int v) {
	if (station[v]) return dp[v]=1;

	if (dp[v]!=-1) return dp[v];

	if (vis[v]) return dp[v]=0;
	vis[v] = 1;

	set<int> poss;

	for (int i: graph[v]) {
		poss.insert(dfs(i));
	}

	if (own[v]) {
		if (poss.count(1)) return dp[v]=1;
		return dp[v]=0;
	}
	if (!own[v]) {
		if (poss.count(0)) return dp[v]=0;
		return dp[v]=1;
	}
}


vector<int> who_wins(vector<int> a, vector<int> r, vector<int> u, vector<int> v) {
	int n = a.size();
	graph.assign(n, vector<int>());
	for (int i = 0; i<(int)u.size(); i++) {
		graph[u[i]].push_back(v[i]);
	}
	own.resize(n);
	station.resize(n);
	for (int i = 0; i<n; i++) {
		own[i] = a[i];
		station[i] = r[i];
	}


	vector<int> res(n);
	for (int i = 0; i<n; i++) {
		vis.assign(n, 0);
		dp.assign(n, -1);
		res[i] = dfs(i);
	}
	return res;
}

Compilation message

train.cpp: In function 'int dfs(int)':
train.cpp:22:11: warning: control reaches end of non-void function [-Wreturn-type]
   22 |  set<int> poss;
      |           ^~~~
# Verdict Execution time Memory Grader output
1 Incorrect 11 ms 724 KB 3rd lines differ - on the 1st token, expected: '0', found: '1'
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 212 KB 3rd lines differ - on the 1st token, expected: '0', found: '1'
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 247 ms 1744 KB 3rd lines differ - on the 1st token, expected: '0', found: '1'
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 12 ms 944 KB 3rd lines differ - on the 696th token, expected: '0', found: '1'
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 2074 ms 1440 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 11 ms 724 KB 3rd lines differ - on the 1st token, expected: '0', found: '1'
2 Halted 0 ms 0 KB -