Submission #1018705

#TimeUsernameProblemLanguageResultExecution timeMemory
1018705vjudge1Planinarenje (COCI18_planinarenje)C++17
32 / 160
173 ms262144 KiB
#include <bits/stdc++.h>
using namespace std;

#define ll long long
int const N=10005;
int const mod=1e9+7;
int n,m;
vector<int> adj[N];
bool state[N];
void dfs(int node,int par){
	if(node<=n)
		state[node]=1;
	for(int i:adj[node])
		if(i!=par)
			dfs(i,node);
	if(node<=n){
		for(int i:adj[node])
			if(i!=par && state[i]==0){
				state[node]=0;
				return;
			}
	}
	else{
		for(int i:adj[node])
			if(i!=par && state[i]==1){
				state[node]=1;
				return;
			}
	}
}

int main(){
	cin>>n>>m;
	for(int i=0;i<m;i++){
		int a,b;
		cin>>a>>b;
		b+=n;
		adj[a].push_back(b);
		adj[b].push_back(a);
	}
	for(int i=1;i<=n;i++){
		for(int j=0;j<=2*n;j++){
			state[i]=0;
		}
		dfs(i,0);
		if(state[i])
			cout<<"Mirko"<<endl;
		else
			cout<<"Slavko"<<endl;
	}
	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...