답안 #958965

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
958965 2024-04-07T10:11:36 Z Cyber_Wolf Pipes (CEOI15_pipes) C++17
10 / 100
1282 ms 65536 KB
#include <bits/stdc++.h>

using namespace std;

#define lg int
#define fastio ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);

const lg N = 1e5+5;

vector<lg> adj[N];
lg n,m, low[N], tin[N], tmp, id;
vector<array<lg, 2>> se;

void dfs(lg src, lg par = -1)
{
	tin[src] = low[src] = ++tmp;
	for(auto it : adj[src])
	{
		if(it == par)
		{
			continue;
		}
		if(tin[it])
		{
			low[src] = min(low[src], tin[it]);
			continue;
		}
		dfs(it, src);
		low[src] = min(low[src], low[it]);
		if(low[it] > tin[src])
		{
			se.push_back({min(it, src), max(it, src)});
		}
	}
	// cout << src << ' ' << low[src] << '\n';
}

int main()
{
	fastio;
	cin >> n >> m;
	for(int i = 0; i < m; i++)
	{
		lg u, v;
		cin >> u >> v;
		adj[u].push_back(v);
		adj[v].push_back(u);
	}
	for(int i = 1; i <= n; i++)
	{
		if(!tin[i])	dfs(i);
	}
	sort(se.begin(), se.end());
	for(int i = 0; i < se.size(); i++)
	{
		if(i && se[i] == se[i-1])	continue;
		if(i+1 < se.size() && se[i] == se[i+1])	continue;
		cout << se[i][0] << ' ' << se[i][1] << '\n';
	}

    return 0;
}

Compilation message

pipes.cpp: In function 'int main()':
pipes.cpp:54:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::array<int, 2> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   54 |  for(int i = 0; i < se.size(); i++)
      |                 ~~^~~~~~~~~~~
pipes.cpp:57:10: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::array<int, 2> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   57 |   if(i+1 < se.size() && se[i] == se[i+1]) continue;
      |      ~~~~^~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 3160 KB Output is correct
2 Incorrect 1 ms 3164 KB Wrong number of edges
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 4 ms 3928 KB Output is correct
2 Incorrect 3 ms 3924 KB Wrong number of edges
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 74 ms 11416 KB Output is correct
2 Correct 74 ms 10904 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 153 ms 15032 KB Output is correct
2 Runtime error 177 ms 30616 KB Memory limit exceeded
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 266 ms 25856 KB Memory limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 420 ms 31708 KB Memory limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 785 ms 65536 KB Memory limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 974 ms 65536 KB Execution killed with signal 9
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1217 ms 65536 KB Execution killed with signal 9
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1282 ms 65536 KB Execution killed with signal 9
2 Halted 0 ms 0 KB -