답안 #86679

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
86679 2018-11-27T05:56:01 Z dimash241 Pipes (CEOI15_pipes) C++14
10 / 100
419 ms 65536 KB
# include <stdio.h>
# include <bits/stdc++.h>
 
#define Accepted 0
#define pb push_back
#define F first
#define S second
#define For(i,x,y)  for (int i = x; i <= y; i ++) 
#define FOr(i,x,y)  for (int i = x; i >= y; i --)
#define SpeedForce ios_base::sync_with_stdio(0), cin.tie(0)
 
using namespace std;
 
int n, m;
bitset < 30101 > g[30101];
bitset < 30101 > has[30101];
bitset < 30101 > was[30101];
vector < pair < int, int > > ans;
 
int tin[30101];
int fup[30101];
int timer;
 
inline void dfs (int v, int par) {
	tin[v] = fup[v] = ++ timer;
	for (int i = g[v]._Find_first(); i < g[v].size(); i = g[v]._Find_next(i)) {
		if (i == par) continue;
		if (tin[i]) {
			fup[v] = min(fup[v], tin[i]);
		} else {
			dfs (i, v);
			fup[v] = min(fup[v], fup[i]);
			if (tin[v] < fup[i]) {
				if(has[v][i]) continue;
				ans.pb({min(v, i), max(v, i)});
			}
		}
	}
}
 
int main () {               
    cin >> n >> m;
    For (i, 1, m) {
    	int l, r;
    	cin >> l >> r;
    	if (was[l][r]) {
    		has[l][r] = 1;
  		  	has[r][l] = 1;
  		}
    	was[l][r] = 1;
    	was[r][l] = 1;
    	g[l][r] = 1;
    	g[r][l] = 1;
    }
 
    For (i, 1, n) {
    	if (!tin[i]) {
    		dfs (i, i);
    	}
    }
 
    for (auto it : ans)
    	cout << it.F << ' ' << it.S << '\n';
    return Accepted;
}

Compilation message

pipes.cpp: In function 'void dfs(int, int)':
pipes.cpp:26:37: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (int i = g[v]._Find_first(); i < g[v].size(); i = g[v]._Find_next(i)) {
                                   ~~^~~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 1024 KB Output is correct
2 Correct 2 ms 1024 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Runtime error 38 ms 33912 KB Memory limit exceeded (if you are sure your verdict is not MLE, please contact us)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 419 ms 39792 KB Memory limit exceeded (if you are sure your verdict is not MLE, please contact us)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 61 ms 65536 KB Execution killed with signal 9 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 56 ms 65536 KB Execution killed with signal 9 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 9 ms 436 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 9 ms 512 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 9 ms 512 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 8 ms 512 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 8 ms 500 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -