127532024-12-29 19:50:59ercseferencElágazás nélküli úton levő települések (50 pont)cpp17Hibás válasz 31/5028ms1304 KiB
#include <iostream>
#include <vector>
using namespace std;
struct pont{vector<int>kim; int k=0; bool van=0;};
int main()
{
    int n,m,x,y;
    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]);}}
    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/028ms1188 KiB
3Hibás válasz0/21ms320 KiB
4Elfogadva2/21ms320 KiB
5Elfogadva2/21ms320 KiB
6Hibás válasz0/21ms508 KiB
7Elfogadva2/21ms320 KiB
8Elfogadva2/23ms320 KiB
9Elfogadva2/24ms568 KiB
10Elfogadva2/28ms592 KiB
11Elfogadva2/214ms748 KiB
12Elfogadva2/214ms696 KiB
13Elfogadva3/32ms468 KiB
14Hibás válasz0/33ms320 KiB
15Hibás válasz0/34ms568 KiB
16Hibás válasz0/37ms568 KiB
17Hibás válasz0/312ms824 KiB
18Hibás válasz0/313ms884 KiB
19Elfogadva3/316ms1032 KiB
20Elfogadva3/327ms1272 KiB
21Elfogadva3/328ms1304 KiB
22Elfogadva3/328ms1252 KiB