# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
704932 | Cookie197 | Naboj (COCI22_naboj) | C++17 | 243 ms | 15228 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#pragma GCC optimize("O4,unroll-loops")
#include<iostream>
#include<vector>
#include<algorithm>
#include<set>
#include<queue>
using namespace std;
#define ll long long
#define pii pair<int,int>
#define endl "\n"
#define mp make_pair
#define out(x) cout << #x << " = " << x << endl
int n,m,deg[200005],tag[200005];
vector<int> adj[200005];
signed main(){
ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
cin>>n>>m;
for (int i=1;i<=m;i++){
int a,b; cin>>a>>b;
adj[b].push_back(a);
deg[a]++;
}
queue<int> q; vector<int> ans;
for (int i=1;i<=n;i++) if (deg[i] == 0) q.push(i);
while(q.size()){
int node = q.front();
q.pop();
ans.push_back(node);
for (int u:adj[node]){
deg[u]--;
if (deg[u] == 0) q.push(u);
}
}
if (ans.size() == n){
cout<<n<<endl;
for (int u:ans) cout<<u<<" "<<1<<endl;
}else cout<<-1<<endl;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |