Cod sursa(job #2877218)

Utilizator robert.barbu27robert barbu robert.barbu27 Data 24 martie 2022 12:30:54
Problema Pioni Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.25 kb
#include <bits/stdc++.h>
#define pb push_back
#define ll long long
using namespace std;
ifstream f("pioni.in");
ofstream g("pioni.out");
bool viz[200005];
vector<int> adj[200005];
int nxt[20005],win[20005];
void dfs(int node)
{
    viz[node]=1;
    for(auto x:adj[node])
    {
        if(viz[x]==0) dfs(x);
        if(win[x]==0)
        {
            win[node]=1;
            nxt[node]=x;
        }
    }
}
int main ()
{
    int T,N,M;
    f>>T>>N>>M;
    for(int i=1;i<=M;i++)
    {
        int x,y;
        f>>x>>y;
        adj[x].pb(y);
    }
    for(int i=1;i<=N;i++)
    {
        if(viz[i]==0)
        {
            dfs(i);
        }
    }
    while(T--)
    {
        int k;
        f>>k;
        vector<int> ans;
        for(int i=1;i<=k;i++)
        {
            int x;
            f>>x;
            if(win[x]==1)
            {
                ans.pb(x);
                ans.pb(nxt[x]);
            }
        }
        if(ans.size())
        {
            g<<"Nargy"<<'\n';
            g<<ans.size()/2<<" ";
            for(auto x:ans)
            {
                g<<x<<" ";
            }
            g<<'\n';
        }
        else
        {
            g<<"Fumeanu"<<'\n';
        }
    }





}