Submission #1096932

# Submission time Handle Problem Language Result Execution time Memory
1096932 2024-10-05T13:12:21 Z ivaziva Monthly railway pass (LMIO18_menesinis_bilietas) C++14
16 / 100
403 ms 92064 KB
#include <bits/stdc++.h>

using namespace std;

#define MAXN 1000001

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 Correct 322 ms 70740 KB Output is correct
2 Correct 17 ms 47196 KB Output is correct
3 Correct 18 ms 47228 KB Output is correct
4 Correct 30 ms 53452 KB Output is correct
5 Correct 20 ms 47452 KB Output is correct
6 Correct 93 ms 52684 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 30 ms 53452 KB Output is correct
2 Correct 20 ms 47452 KB Output is correct
3 Correct 19 ms 47196 KB Output is correct
4 Correct 20 ms 47452 KB Output is correct
5 Correct 23 ms 47448 KB Output is correct
6 Correct 227 ms 58424 KB Output is correct
7 Correct 403 ms 92064 KB Output is correct
8 Correct 31 ms 48976 KB Output is correct
9 Correct 34 ms 49496 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 17 ms 47196 KB Output is correct
2 Correct 18 ms 47228 KB Output is correct
3 Correct 19 ms 47196 KB Output is correct
4 Correct 20 ms 47452 KB Output is correct
5 Correct 23 ms 47448 KB Output is correct
6 Correct 20 ms 47196 KB Output is correct
7 Correct 21 ms 47192 KB Output is correct
8 Correct 20 ms 47452 KB Output is correct
9 Correct 22 ms 47428 KB Output is correct
10 Incorrect 23 ms 47452 KB Output isn't correct
11 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 20 ms 47196 KB Output is correct
2 Correct 21 ms 47192 KB Output is correct
3 Correct 20 ms 47452 KB Output is correct
4 Correct 22 ms 47428 KB Output is correct
5 Incorrect 23 ms 47452 KB Output isn't correct
6 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 20 ms 47196 KB Output is correct
2 Correct 21 ms 47192 KB Output is correct
3 Correct 20 ms 47452 KB Output is correct
4 Correct 22 ms 47428 KB Output is correct
5 Incorrect 23 ms 47452 KB Output isn't correct
6 Halted 0 ms 0 KB -