Submission #115961

# Submission time Handle Problem Language Result Execution time Memory
115961 2019-06-10T04:56:10 Z Mahdi_Jfri Senior Postmen (BOI14_postmen) C++14
55 / 100
109 ms 11304 KB
#include<bits/stdc++.h>
using namespace std;

#define ll long long
#define pb push_back

const int maxn = 1e5 + 20;

vector<int> adj[maxn] , path;

int from[maxn] , to[maxn];

bool visited[maxn];

void dfs(int v)
{
	while(!adj[v].empty())
	{
		int e = adj[v].back() , u = from[e] ^ to[e] ^ v;
		adj[v].pop_back();

		if(visited[e])
			continue;

		visited[e] = 1;
		dfs(u);
	}
	path.pb(v);
}

int main()
{
	int n , m;
	scanf("%d%d", &n, &m);

	for(int i = 0; i < m; i++)
	{
		int a , b;
		scanf("%d%d", &a, &b);
		a-- , b--;

		adj[a].pb(i);
		adj[b].pb(i);

		from[i] = a , to[i] = b;
	}

	dfs(0);

	vector<int> tmp;
	memset(visited , 0 , sizeof visited);
	for(auto v : path)
	{
		if(visited[v])
		{
			while(tmp.back() != v)
			{
				printf("%d ", tmp.back() + 1);
				visited[tmp.back()] = 0;
				tmp.pop_back();
			}
			tmp.pop_back();
			printf("%d\n", v + 1);
		}

		tmp.pb(v);
		visited[v] = 1;
	}
}





Compilation message

postmen.cpp: In function 'int main()':
postmen.cpp:34:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d%d", &n, &m);
  ~~~~~^~~~~~~~~~~~~~~~
postmen.cpp:39:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d%d", &a, &b);
   ~~~~~^~~~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 6 ms 2816 KB Output is correct
2 Correct 6 ms 2816 KB Output is correct
3 Correct 6 ms 2792 KB Output is correct
4 Correct 9 ms 2944 KB Output is correct
5 Correct 7 ms 2816 KB Output is correct
6 Correct 8 ms 3072 KB Output is correct
7 Correct 12 ms 3712 KB Output is correct
8 Correct 7 ms 2944 KB Output is correct
9 Correct 57 ms 8560 KB Output is correct
10 Correct 7 ms 2944 KB Output is correct
11 Correct 8 ms 2996 KB Output is correct
12 Correct 60 ms 8816 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 6 ms 2864 KB Output is correct
2 Correct 6 ms 2816 KB Output is correct
3 Correct 6 ms 2816 KB Output is correct
4 Correct 9 ms 2944 KB Output is correct
5 Correct 8 ms 2816 KB Output is correct
6 Correct 8 ms 3072 KB Output is correct
7 Correct 12 ms 3712 KB Output is correct
8 Correct 8 ms 2944 KB Output is correct
9 Correct 50 ms 8688 KB Output is correct
10 Correct 8 ms 2944 KB Output is correct
11 Correct 8 ms 2944 KB Output is correct
12 Correct 58 ms 8796 KB Output is correct
13 Correct 102 ms 11252 KB Output is correct
14 Correct 81 ms 8936 KB Output is correct
15 Correct 82 ms 10004 KB Output is correct
16 Correct 91 ms 11252 KB Output is correct
17 Correct 97 ms 7152 KB Output is correct
18 Correct 95 ms 9460 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 6 ms 2816 KB Output is correct
2 Correct 6 ms 2816 KB Output is correct
3 Correct 6 ms 2816 KB Output is correct
4 Correct 8 ms 2944 KB Output is correct
5 Correct 6 ms 2816 KB Output is correct
6 Correct 8 ms 3072 KB Output is correct
7 Correct 15 ms 3712 KB Output is correct
8 Correct 7 ms 2944 KB Output is correct
9 Correct 46 ms 8560 KB Output is correct
10 Correct 7 ms 2944 KB Output is correct
11 Correct 8 ms 2884 KB Output is correct
12 Correct 65 ms 8796 KB Output is correct
13 Correct 102 ms 11304 KB Output is correct
14 Correct 85 ms 8948 KB Output is correct
15 Correct 88 ms 9968 KB Output is correct
16 Correct 109 ms 11300 KB Output is correct
17 Correct 88 ms 7188 KB Output is correct
18 Correct 83 ms 9460 KB Output is correct
19 Runtime error 12 ms 5248 KB Execution killed with signal 11 (could be triggered by violating memory limits)
20 Halted 0 ms 0 KB -