Submission #103589

#TimeUsernameProblemLanguageResultExecution timeMemory
103589luciocfSenior Postmen (BOI14_postmen)C++17
38 / 100
1073 ms22772 KiB
#include <bits/stdc++.h>
#define gc getchar

using namespace std;

const int maxn = 5e5+10;

typedef pair<int, int> pii;

bool markEdge[maxn], mark[maxn];

vector<pii> grafo[maxn];

vector<int> stk;

void dfs(int u)
{
	if (mark[u])
	{
		while (true)
		{
			int v = stk.back();
			stk.pop_back();

			mark[v] = 0;

			if (v == u)
			{
				printf("%d\n", v);
				break;
			}

			printf("%d ", v);
		}
	}

	for (auto v: grafo[u])
	{
		if (!markEdge[v.second])
		{
			mark[u] = 1;
			stk.push_back(u);
			markEdge[v.second] = 1;

			dfs(v.first);
		}
	}
}

inline int scan(void)
{
	int n = 0, x = gc(), s =1;

	for (;x<'0'||x>'9';x=gc()) if(x=='-') s=-1;
	for (;x>='0'&&x<='9';x=gc()) n = (n<<3) + (n<<1) + x-'0';
	return n;
}

int main(void)
{
	int n, m;
	n = scan(), m = scan();

	for (int i = 1; i <= m; i++)
	{
		int u, v;
		u = scan(), v = scan();

		grafo[u].push_back({v, i});
		grafo[v].push_back({u, i});
	}

	dfs(1);
}

Compilation message (stderr)

postmen.cpp: In function 'int scan()':
postmen.cpp:52:23: warning: variable 's' set but not used [-Wunused-but-set-variable]
  int n = 0, x = gc(), s =1;
                       ^
postmen.cpp: In function 'int main()':
postmen.cpp:61:6: warning: variable 'n' set but not used [-Wunused-but-set-variable]
  int n, m;
      ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...