128622025-01-02 17:10:49ercseferencElágazás nélküli úton levő települések (50 pont)cpp17Hibás válasz 31/5028ms1400 KiB
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
struct pont{vector<int>kim; int k=0; bool van=0;};
bool has(int a, int b) {
    return a<b;
}
int main()
{
    int n,m,x,y; //ifstream f("szamok.txt");
    cin>>n>>m; pont a[n+1]; bool nincs=0;
    for(int i=0; i<m; i++)
        {cin>>x>>y; a[x].kim.push_back(y);
        a[y].kim.push_back(x); a[x].k++; a[y].k++;}
    vector<int>l1,l2,l3;
    for(int i=1; i<=n; i++){if(a[i].k==1){l1.push_back(i); a[i].van=1;}}
    while(nincs==0){
        if(l1.size()==0)nincs=1;
        for(int i=0; i<l1.size(); i++){
            for(int j=0; j<a[l1[i]].kim.size(); j++){
                if(a[a[l1[i]].kim[j]].van==0)
                    {l2.push_back(a[l1[i]].kim[j]); a[a[l1[i]].kim[j]].van=1;}}}
        l1.clear();
        for(int i=0; i<l2.size(); i++)
            {if(a[l2[i]].k==2)l1.push_back(l2[i]);
            l3.push_back(l2[i]);} l2.clear();}
    /*for(int i=0; i<l3.size(); i++){
        for(int j=i; j<l3.size(); j++){if(l3[i]>l3[j])swap(l3[i],l3[j]);}}*/
    sort(l3.begin(),l3.end(),has);
    if(l3.size()==0)cout<<"0";
    else{cout<<l3.size()<<endl;
        for(int i=0; i<l3.size(); i++){cout<<l3[i]<<" ";}}
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base31/50
1Elfogadva0/01ms320 KiB
2Elfogadva0/028ms1332 KiB
3Hibás válasz0/21ms332 KiB
4Elfogadva2/21ms320 KiB
5Elfogadva2/21ms320 KiB
6Hibás válasz0/21ms320 KiB
7Elfogadva2/21ms320 KiB
8Elfogadva2/23ms476 KiB
9Elfogadva2/24ms536 KiB
10Elfogadva2/28ms504 KiB
11Elfogadva2/214ms652 KiB
12Elfogadva2/214ms680 KiB
13Elfogadva3/32ms320 KiB
14Hibás válasz0/33ms320 KiB
15Hibás válasz0/34ms568 KiB
16Hibás válasz0/34ms568 KiB
17Hibás válasz0/312ms780 KiB
18Hibás válasz0/313ms900 KiB
19Elfogadva3/317ms980 KiB
20Elfogadva3/328ms1300 KiB
21Elfogadva3/328ms1400 KiB
22Elfogadva3/328ms1356 KiB