Submission #704932

#TimeUsernameProblemLanguageResultExecution timeMemory
704932Cookie197Naboj (COCI22_naboj)C++17
110 / 110
243 ms15228 KiB
#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)

naboj.cpp: In function 'int main()':
naboj.cpp:37:20: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   37 |     if (ans.size() == n){
      |         ~~~~~~~~~~~^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...