Submission #34458

#TimeUsernameProblemLanguageResultExecution timeMemory
34458bnahmad15Pipes (CEOI15_pipes)C++14
30 / 100
213 ms9208 KiB
#include <bits/stdc++.h> using namespace std; const int N = 5010; bitset< N > vis , vis2[N] , vis3[N]; vector< short > adj[N]; short dfs_low[N], dfs_num[N], num = 0 ; int n , m , u , v , ans = 0 ; void DFS(short node,short prnt){ vis[node]=true; dfs_low[node]=dfs_num[node]=num++; for (short i = 0;i<adj[node].size();i++){ if (adj[node][i]==prnt) continue; if (vis[adj[node][i]]){ dfs_low[node]=min(dfs_low[node],dfs_num[adj[node][i]]); } else { DFS(adj[node][i],node); if (dfs_num[node] < dfs_low[adj[node][i]] && !vis3[node][adj[node][i]]){ printf("%d %d\n",node,adj[node][i]); } dfs_low[node]=min(dfs_low[node],dfs_low[adj[node][i]]); } } } int main(){ scanf("%d%d",&n,&m); for (int i = 0 ; i <m;i++){ scanf("%d%d",&u,&v); if (vis2[u][v]){ vis3[u][v]=vis3[v][u]=true; continue; } vis2[u][v]=vis2[v][u]=true; adj[u].push_back(v); adj[v].push_back(u); } for (int i = 1 ; i <= n;i++) if (!vis[i]) DFS(i,-1); return 0; }

Compilation message (stderr)

pipes.cpp: In function 'void DFS(short int, short int)':
pipes.cpp:12:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (short i = 0;i<adj[node].size();i++){
                   ~^~~~~~~~~~~~~~~~~
pipes.cpp: In function 'int main()':
pipes.cpp:29: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:31:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d%d",&u,&v);
   ~~~~~^~~~~~~~~~~~~~
#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...