Cod sursa(job #3237274)

Utilizator Floroiu_MariusFloroiu Marius Cristian Floroiu_Marius Data 7 iulie 2024 23:10:23
Problema BFS - Parcurgere in latime Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.87 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("estearbore.in");
ofstream fout("estearbore.out");
int n,m;
bool fr[103][103];
vector<int> v[103];
bool ap[103];
void dfs(int nod)
{
    ap[nod]=true;
    for (int i=0; i<v[nod].size(); i++)
    {
        if (ap[v[nod][i]]==false)
        {
            dfs(v[nod][i]);
        }
    }
}
int x,y;
int k;
int main()
{
    fin>>n;
    while (fin>>x>>y)
    {
        if (fr[min(x,y)][max(x,y)]==0)
        {
            k++;
            v[x].push_back(y);
            v[y].push_back(x);
            fr[min(x,y)][max(x,y)]=1;
        }
    }
    if (k!=n-1)
    {
        fout<<"NU";
        return 0;
    }
    dfs(1);
    for (int i=2; i<=n; i++)
    {
        if (!ap[i])
        {
            fout<<"NU";
            return 0;
        }
    }
    fout<<"DA";
    return 0;
}