Submission #40425

#TimeUsernameProblemLanguageResultExecution timeMemory
40425PajarajaPipes (CEOI15_pipes)C++14
30 / 100
635 ms23384 KiB
#include <bits/stdc++.h>
using namespace std;
vector<int> g[30007];
int d[30007],minx[30007];
void dfs(int s,int du,int f)
{
	minx[s]=10000007;
	d[s]=du;
	int cnt=0;
	for(int i=0;i<g[s].size();i++)
	{
		if(cnt==0 && g[s][i]==f)
		{
			cnt++;
			continue;
		}
		if(d[g[s][i]]==-1)
		{
			dfs(g[s][i],du+1,s);
			if(minx[g[s][i]]>du) printf("%d %d\n",s,g[s][i]);
			minx[s]=fmin(minx[s],minx[g[s][i]]);
		}
		else minx[s]=fmin(minx[s],d[g[s][i]]); 
	}
}
int main()
{
	int n,m;
	fill(d,d+30007,-1);
	scanf("%d%d",&n,&m);
	for(int i=0;i<m;i++)
	{
		int t1,t2;
		scanf("%d%d",&t1,&t2);
		g[t1].push_back(t2);
		g[t2].push_back(t1);
	}
	for(int i=1;i<=n;i++) if(d[i]==-1) dfs(i,0,-1);
}

Compilation message (stderr)

pipes.cpp: In function 'void dfs(int, int, int)':
pipes.cpp:10:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int i=0;i<g[s].size();i++)
              ~^~~~~~~~~~~~
pipes.cpp: In function 'int main()':
pipes.cpp:30:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d%d",&n,&m);
  ~~~~~^~~~~~~~~~~~~~
pipes.cpp:34:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d%d",&t1,&t2);
   ~~~~~^~~~~~~~~~~~~~~~
#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...