141862025-01-10 08:32:47BencuElágazás nélküli úton levő települések (50 pont)cpp17Hibás válasz 31/5028ms1332 KiB
#include <bits/stdc++.h>

using namespace std;
int n,m,fok[10001],M[10001],s;
bool meg[10000];
vector<vector<int>>a(10001);

void be() {
    ifstream f("be.in");
    cin>>n>>m;
    for (int i=1; i<=m; i++) {
        int x,y;
        cin>>x>>y;
        a[x].push_back(y);
        a[y].push_back(x);
        fok[x]++;
        fok[y]++;
    }
    //for (int i=1; i<=n; i++) cout<<i<<"-"<<fok[i]<<endl;
}
void bejar(int x) {
    //cout<<x<<endl;
    M[s]=x;
    s++;
    meg[x]=1;
    if(fok[x]==2) {
        int i=0;
        //while(meg[a[x][i]]==1) i++;
        for (int i=0; i<a[x].size(); i++) {
            if(meg[a[x][i]]==0) bejar(a[x][i]);
        }
    }
}
int helyre(int elso, int utolso) {
    int i=elso,j=utolso,p=elso;
    while (i<j) {
        if(M[i]>M[j]) {
            swap(M[i],M[j]);
            if(i==p) {
                p=j;
                i++;
            }
            else {
                p=i;
                j--;
            }
        }
        else if(p==i) j--;
            else i++;
    }
    return p;
}
void QuickSort(int elso,int utolso) {
    if (elso<utolso) {
        int k=helyre(elso,utolso);
        QuickSort(elso,k-1);
        QuickSort(k+1,utolso);
    }
}

int main()
{
    be();
    //for (int i=1; i<=n; i++) cout<<i<<"-"<<b[i]<<endl;
    for (int i=1; i<=n; i++) {
        if(fok[i]==1) {
            //cout<<i<<endl;
            meg[i]=1;
            if(meg[a[i][0]]==0) bejar(a[i][0]);
        }
    }
    QuickSort(0,s-1);
    if (s!=0) {
        cout<<s<<endl;
        for (int i=0; i<s; i++) cout<<M[i]<<" ";
    }
    else cout<<0;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base31/50
1Elfogadva0/01ms564 KiB
2Elfogadva0/028ms1332 KiB
3Hibás válasz0/21ms756 KiB
4Elfogadva2/21ms564 KiB
5Elfogadva2/21ms564 KiB
6Hibás válasz0/21ms756 KiB
7Elfogadva2/21ms652 KiB
8Elfogadva2/23ms564 KiB
9Elfogadva2/24ms564 KiB
10Elfogadva2/27ms820 KiB
11Elfogadva2/214ms948 KiB
12Elfogadva2/214ms864 KiB
13Elfogadva3/32ms756 KiB
14Hibás válasz0/34ms564 KiB
15Hibás válasz0/34ms760 KiB
16Hibás válasz0/34ms872 KiB
17Hibás válasz0/312ms820 KiB
18Hibás válasz0/313ms1012 KiB
19Elfogadva3/316ms964 KiB
20Elfogadva3/327ms1236 KiB
21Elfogadva3/328ms1332 KiB
22Elfogadva3/327ms1332 KiB