Submission #1069256


Source Code Expand

#include <bits/stdc++.h>

using namespace std;

struct node{
    int setnum1,setnum2;
};

int N,K,L;
node city[200007];
int setsum[200007];

void init(){
    for(int i=0;i<N;i++){
        city[i].setnum1=city[i].setnum2=i;
    }
}
int findset1(int x){
    return city[x].setnum1==x?x:city[x].setnum1=findset1(city[x].setnum1);
}
int findset2(int x){
    return city[x].setnum2==x?x:city[x].setnum2=findset2(city[x].setnum2);
}


int main()
{
    cin>>N>>K>>L;
    init();
    for(int i=0;i<K;i++){
        int u,v;
        scanf("%d%d",&u,&v);
        u--;
        v--;
        int set1,set2;
        set1=findset1(u);
        set2=findset1(v);
        if(set1!=set2){
            city[set1].setnum1=city[set2].setnum1;
        }
//        for(int j=0;j<N;j++)printf("%d ",city[j].setnum1);
//        cout<<endl;
    }
    for(int i=0;i<N;i++)findset1(i);

//        for(int j=0;j<N;j++)printf("%d ",city[j].setnum1);
//        cout<<endl;
    for(int i=0;i<L;i++){
        int u,v;
        scanf("%d%d",&u,&v);
        u--;
        v--;
        int set1,set2;
        set1=findset2(u);
        set2=findset2(v);
        if(set1!=set2&&findset1(u)==findset1(v)){
            city[set1].setnum2=city[set2].setnum2;
        }
    }
    for(int i=0;i<N;i++)setsum[findset2(i)]++;
//    for(int i=0;i<N;i++)cout<<city[i].setnum1<<' '<<city[i].setnum2<<endl;
    for(int i=0;i<N;i++)printf("%d ",setsum[findset2(i)]);
    return 0;
}

Submission Info

Submission Time
Task D - Connectivity
User vjudge1
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1429 Byte
Status WA
Exec Time 60 ms
Memory 2944 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:32:28: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d%d",&u,&v);
                            ^
./Main.cpp:50:28: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d%d",&u,&v);
                            ^

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 400
Status
AC × 3
AC × 6
WA × 12
Set Name Test Cases
Sample subtask0_0.txt, subtask0_1.txt, subtask0_2.txt
All subtask0_0.txt, subtask0_1.txt, subtask0_2.txt, subtask1_0.txt, subtask1_1.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_2.txt, subtask1_3.txt, subtask1_4.txt, subtask1_5.txt, subtask1_6.txt, subtask1_7.txt, subtask1_8.txt, subtask1_9.txt
Case Name Status Exec Time Memory
subtask0_0.txt AC 3 ms 256 KB
subtask0_1.txt AC 3 ms 256 KB
subtask0_2.txt AC 3 ms 256 KB
subtask1_0.txt AC 31 ms 256 KB
subtask1_1.txt WA 55 ms 2816 KB
subtask1_10.txt AC 33 ms 256 KB
subtask1_11.txt WA 52 ms 2560 KB
subtask1_12.txt WA 58 ms 2816 KB
subtask1_13.txt WA 55 ms 2944 KB
subtask1_14.txt WA 55 ms 2304 KB
subtask1_2.txt WA 53 ms 2304 KB
subtask1_3.txt WA 58 ms 2944 KB
subtask1_4.txt WA 55 ms 2432 KB
subtask1_5.txt AC 33 ms 256 KB
subtask1_6.txt WA 50 ms 2432 KB
subtask1_7.txt WA 57 ms 2944 KB
subtask1_8.txt WA 60 ms 2944 KB
subtask1_9.txt WA 54 ms 2048 KB