Submission #1096931

# Submission time Handle Problem Language Result Execution time Memory
1096931 2024-10-05T13:11:51 Z ivaziva Monthly railway pass (LMIO18_menesinis_bilietas) C++14
0 / 100
274 ms 50000 KB
#include <bits/stdc++.h>

using namespace std;

#define MAXN 200001

int n,m;
vector<int> adj[2][MAXN];
int komp[MAXN],siz[MAXN],tren=0;
bool pos[MAXN];
vector<int> koren;
set<int> komponente;

void dfs(int node)
{
    pos[node]=true;komp[node]=tren;siz[tren]++;
    for (int sled:adj[0][node])
    {
        if (pos[sled]==true) continue;
        else dfs(sled);
    }
}

void dfs1(int node)
{
    pos[node]=true;
    for (int sled:adj[1][node]) komponente.insert(komp[sled]);
    for (int sled:adj[0][node])
    {
        if (pos[sled]==true) continue;
        else dfs1(sled);
    }
}

int main()
{
    cin>>n>>m;
    for (int i=1;i<=m;i++)
    {
        int x,y;cin>>x>>y;char c;cin>>c;
        if (c=='T') {adj[0][x].push_back(y);adj[0][y].push_back(x);}
        else {adj[1][x].push_back(y);adj[1][y].push_back(x);}
    }
    koren.push_back(0);
    for (int i=1;i<=n;i++)
    {
        if (pos[i]==true) continue;
        else {koren.push_back(i);tren++;dfs(i);}
    }
    for (int i=1;i<=n;i++) pos[i]=false;
    int ans=0;
    for (int i=1;i<=tren;i++)
    {
        dfs1(koren[i]);
        if (komponente.size()==tren-1) ans+=siz[i];
        komponente.clear();
    }
    cout<<ans<<endl;
}

Compilation message

menesinis_bilietas.cpp: In function 'int main()':
menesinis_bilietas.cpp:55:30: warning: comparison of integer expressions of different signedness: 'std::set<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   55 |         if (komponente.size()==tren-1) ans+=siz[i];
      |             ~~~~~~~~~~~~~~~~~^~~~~~~~
# Verdict Execution time Memory Grader output
1 Runtime error 274 ms 50000 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 14 ms 25040 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 3 ms 9836 KB Output is correct
2 Correct 4 ms 9820 KB Output is correct
3 Correct 5 ms 9816 KB Output is correct
4 Correct 6 ms 9820 KB Output is correct
5 Incorrect 7 ms 10072 KB Output isn't correct
6 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 3 ms 9836 KB Output is correct
2 Correct 4 ms 9820 KB Output is correct
3 Correct 5 ms 9816 KB Output is correct
4 Correct 6 ms 9820 KB Output is correct
5 Incorrect 7 ms 10072 KB Output isn't correct
6 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 3 ms 9836 KB Output is correct
2 Correct 4 ms 9820 KB Output is correct
3 Correct 5 ms 9816 KB Output is correct
4 Correct 6 ms 9820 KB Output is correct
5 Incorrect 7 ms 10072 KB Output isn't correct
6 Halted 0 ms 0 KB -