Submission #212314

# Submission time Handle Problem Language Result Execution time Memory
212314 2020-03-22T17:06:24 Z faresbasbs Stray Cat (JOI20_stray) C++14
5 / 100
91 ms 15228 KB
#include "Anthony.h"
#include <bits/stdc++.h>
using namespace std;
vector<vector<pair<int,int>>> graph;

vector<int> Mark(int N, int M, int A, int B, vector<int> U, vector<int> V){
	graph.resize(N);
	for(int i = 0 ; i < M ; i += 1){
		graph[U[i]].push_back({V[i],i});
		graph[V[i]].push_back({U[i],i});
	}
	vector<int> vals = {1,0,0,1,1,0};
	bool seen[N];
	memset(seen,false,sizeof seen);
	vector<int> ans(M,-1);
	queue<pair<int,int>> q;
	q.push({0,-1});
	seen[0] = true;
	int dist = 0 , cnt = 0;
	while(q.size()){
		int f = q.size();
		while(f--){
			pair<int,int> curr = q.front();
			q.pop();
			int cnt = 0;
			vector<pair<int,int>> vv;
			for(pair<int,int> i : graph[curr.first]){
				if(!seen[i.first]){
					vv.push_back(i);
					cnt += 1;
				}
			}
			if(cnt > 1 && curr.first != 0){
				for(pair<int,int> i : graph[curr.first]){
					if(!seen[i.first]){
						ans[i.second] = 1-ans[curr.second];
						q.push({i.first,i.second});
						seen[i.first] = true;
					}
				}
			}else{
				for(pair<int,int> i : graph[curr.first]){
					if(!seen[i.first]){
						ans[i.second] = dist;
						q.push({i.first,i.second});
						seen[i.first] = true;
					}
				}
			}
		}
		dist = vals[cnt];
		cnt = (cnt+1)%6;
	}
	return ans;
}
#include "Catherine.h"
#include <bits/stdc++.h>
using namespace std;
int A,B,cnt=0,last=-1;
vector<int> vals;

void Init(int a, int b) {
    A = a;
    B = b;
}

void shift(){
	vector<int> vv;
	for(int i = 1 ; i < 6 ; i += 1){
		vv.push_back(vals[i]);
	}
	vv.push_back(vals[0]);
	vals = vv;
}

bool ok(){
	vector<int> vv = {1,0,0,1,1,0};
	for(int i = 0 ; i < 6 ; i += 1){
		shift();
		if(vals == vv){
			vals.clear();
			return true;
		}
	}
	vals.clear();
	return false;
}

int Move(vector<int> y){
	if(cnt < 6){
		if(cnt == 0 && y[0]+y[1] > 2){
			cnt = 6;
			if(y[0] == 1){
				return last = 0;
			}
			return last = 1;
		}else if(cnt > 0 && y[0]+y[1] > 1){
			cnt = 6;
			if(y[1-last] == 1){
				return last = 1-last;
			}
			return -1;
		}
		if(cnt == 0){
			cnt += 1;
			if(y[0]){
				vals.push_back(0);
				return last = 0;
			}
			vals.push_back(1);
			return last = 1;
		}
		if(y[0] == 1){
			cnt += 1;
			vals.push_back(0);
			return last = 0;
		}else if(y[1] == 1){
			cnt += 1;
			vals.push_back(1);
			return last = 1;
		}else{
			cnt = 6;
			return -1;
		}
	}
	if(y[0]+y[1] > 1){
		return last = 1-last;
	}
	if(vals.size() == 6){
		if(ok()){
			return -1;
		}
	}
	if(y[0]+y[1] == 1){
		if(y[0] == 1){
			return last = 0;
		}
		return last = 1;
	}
}

Compilation message

Catherine.cpp: In function 'int Move(std::vector<int>)':
Catherine.cpp:85:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^
# Verdict Execution time Memory Grader output
1 Incorrect 57 ms 15228 KB Wrong Answer [6]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 57 ms 15228 KB Wrong Answer [6]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 73 ms 13000 KB Output is correct
2 Correct 10 ms 780 KB Output is correct
3 Correct 49 ms 12972 KB Output is correct
4 Correct 69 ms 14064 KB Output is correct
5 Incorrect 91 ms 14020 KB Wrong Answer [6]
6 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 73 ms 13000 KB Output is correct
2 Correct 10 ms 780 KB Output is correct
3 Correct 49 ms 12972 KB Output is correct
4 Correct 69 ms 14064 KB Output is correct
5 Incorrect 91 ms 14020 KB Wrong Answer [6]
6 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 10 ms 1044 KB Output is correct
2 Correct 9 ms 772 KB Output is correct
3 Correct 10 ms 1044 KB Output is correct
4 Correct 10 ms 1036 KB Output is correct
5 Correct 10 ms 1164 KB Output is correct
6 Correct 11 ms 1164 KB Output is correct
7 Correct 11 ms 1064 KB Output is correct
8 Correct 11 ms 1036 KB Output is correct
9 Correct 12 ms 1316 KB Output is correct
10 Correct 10 ms 1036 KB Output is correct
11 Correct 11 ms 1244 KB Output is correct
12 Correct 10 ms 1036 KB Output is correct
13 Correct 11 ms 1172 KB Output is correct
14 Correct 10 ms 1036 KB Output is correct
15 Correct 10 ms 1172 KB Output is correct
16 Correct 10 ms 1036 KB Output is correct
17 Correct 11 ms 1044 KB Output is correct
18 Correct 10 ms 1036 KB Output is correct
19 Correct 10 ms 1172 KB Output is correct
20 Correct 10 ms 1164 KB Output is correct
21 Correct 11 ms 1048 KB Output is correct
22 Correct 10 ms 1036 KB Output is correct
23 Correct 11 ms 1036 KB Output is correct
24 Correct 10 ms 1036 KB Output is correct
25 Correct 10 ms 1036 KB Output is correct
26 Correct 12 ms 1068 KB Output is correct
27 Correct 10 ms 1164 KB Output is correct
28 Correct 10 ms 1036 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 61 ms 11388 KB Output is correct
2 Correct 61 ms 11568 KB Output is correct
3 Correct 9 ms 784 KB Output is correct
4 Correct 44 ms 11224 KB Output is correct
5 Correct 91 ms 12512 KB Output is correct
6 Correct 74 ms 12596 KB Output is correct
7 Correct 63 ms 11528 KB Output is correct
8 Correct 55 ms 11536 KB Output is correct
9 Correct 88 ms 12404 KB Output is correct
10 Correct 75 ms 12476 KB Output is correct
11 Correct 80 ms 12412 KB Output is correct
12 Correct 71 ms 12524 KB Output is correct
13 Correct 72 ms 12496 KB Output is correct
14 Correct 72 ms 12564 KB Output is correct
15 Correct 78 ms 12412 KB Output is correct
16 Correct 82 ms 12868 KB Output is correct
17 Correct 71 ms 12584 KB Output is correct
18 Correct 72 ms 12544 KB Output is correct
19 Correct 69 ms 12676 KB Output is correct
20 Correct 74 ms 12484 KB Output is correct
21 Correct 80 ms 12620 KB Output is correct
22 Correct 78 ms 12596 KB Output is correct
23 Correct 61 ms 11736 KB Output is correct
24 Correct 76 ms 11604 KB Output is correct
25 Correct 65 ms 11992 KB Output is correct
26 Correct 80 ms 11876 KB Output is correct
27 Correct 73 ms 12264 KB Output is correct
28 Correct 66 ms 12372 KB Output is correct
29 Correct 67 ms 12372 KB Output is correct
30 Correct 62 ms 12244 KB Output is correct
31 Incorrect 56 ms 11720 KB Wrong Answer [6]
32 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 60 ms 11728 KB Output is correct
2 Correct 57 ms 12068 KB Output is correct
3 Correct 9 ms 880 KB Output is correct
4 Correct 50 ms 11304 KB Output is correct
5 Correct 73 ms 12516 KB Output is correct
6 Correct 78 ms 12412 KB Output is correct
7 Correct 55 ms 11644 KB Output is correct
8 Incorrect 76 ms 12068 KB Wrong Answer [6]
9 Halted 0 ms 0 KB -