Pagini recente » Cod sursa (job #991145) | Clasament oni07-09 | Cod sursa (job #1213488) | Cod sursa (job #404952) | Cod sursa (job #2020657)
#include <fstream>
#include <vector>
#include <bitset>
using namespace std;
ifstream fi ("pioni.in");
ofstream fo ("pioni.out");
vector <int> v[20005];
bitset <20005> viz;
int lg[20005],sol[20005],a[20005];
int t,nrnod,nrmuchii,i,rez,nr;
void citire()
{
fi>>t>>nrnod>>nrmuchii;
for (i=1;i<=nrnod;i++) viz[i]=false;
for (i=1;i<=nrmuchii;i++)
{
int nod1,nod2;
fi>>nod1>>nod2;
v[nod1].push_back(nod2);
}
}
void dfs(int nod)
{
int it;
viz[nod]=true;
sol[nod]=0;
for (it=0;it<v[nod].size();it++)
{
if (!viz[v[nod][it]])
dfs(v[nod][it]);
if (sol[v[nod][it]]==0)
{
sol[nod]=v[nod][it];
}
}
}
int main()
{
citire();
for (i=1;i<=nrmuchii;i++)
if (!viz[i])
dfs(i);
while (t)
{
t--;
rez=0;
fi>>nr;
for (i=1;i<=nr;i++)
{
fi>>a[i];
if (sol[a[i]]!=0) rez++;
}
if (rez>0)
{
fo<<"Nargy"<<'\n';
fo<<rez;
for (i=1;i<=nr;i++) if (sol[a[i]]>0) fo<<' '<<a[i]<<' '<<sol[a[i]];
fo<<'\n';
}
else fo<<"Fumeanu"<<'\n';
}
return 0;
}