Submission #1329788

#TimeUsernameProblemLanguageResultExecution timeMemory
1329788secondaccountmaybeNaboj (COCI22_naboj)C++20
110 / 110
249 ms20380 KiB
#include<bits/stdc++.h>
using namespace std;
#define ll long long
const ll m_x=200005;
vector<ll>v[m_x];
ll d[m_x],s[m_x];
ll n,m;
int main()
{
	ios_base::sync_with_stdio(false);
	cin.tie(0);
	cin>>n>>m;
	for(ll i=0;i<m;i++)
	{
		ll a,b;
		cin>>a>>b;
		v[b].push_back(a);
		d[a]++;
	}
	queue<ll>q;
	for(ll i=1;i<=n;i++)
	{
		if(d[i]==0)
		{
			q.push(i);
		}
	}
	vector<pair<ll,ll>>r;
	while(!q.empty())
	{
		ll t=q.front();
		q.pop();
		r.push_back({t,1});
		for(auto x:v[t])
		{
			d[x]--;
			if(d[x]==0)
			{
				q.push(x);
			}
		}
	}
	if(r.size()<n)
	{
		cout<<-1<<endl;
	}
	else
	{
		cout<<r.size()<<endl;
		for(ll i=0;i<r.size();i++)
		{
			cout<<r[i].first<<" "<<r[i].second<<endl;
		}
	}
	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...