Submission #1035197

# Submission time Handle Problem Language Result Execution time Memory
1035197 2024-07-26T06:18:52 Z 12345678 Parachute rings (IOI12_rings) C++17
37 / 100
933 ms 120656 KB
#include <bits/stdc++.h>

using namespace std;

const int nx=1e6+5;

int n, vs[nx], sm[nx], rem[nx], cnt, res, lvl[nx], t, mx, cntt;
vector<int> d[nx];

void dfs(int u, int p)
{
    vs[u]=1;
    lvl[u]=lvl[p]+1;
    for (auto v:d[u])
    {
        if (v==p) continue;
        if (!vs[v]) dfs(v, u);
        else if (lvl[v]<lvl[u]) sm[u]++, rem[v]++, cnt++;
    }
}

void dfs2(int u, int p)
{
    vs[u]=1;
    for (auto v:d[u]) if (v!=p&&!vs[v]) dfs2(v, u), sm[u]+=sm[v]-rem[v];
    if (sm[u]==cnt)
    {
        int f=0, tmp=d[u].size()>2;
        if (mx>3&&cntt>1) return;
        if (mx>3&&cntt==1&&d[u].size()<=3) return;
        for (auto v:d[u]) if (d[v].size()==3) tmp++;
        if (!f&&tmp==t) res++;
    }
}

void Init(int N_) {
    n=N_;
}

void Link(int A, int B) {
    d[A].push_back(B), d[B].push_back(A);
}

int CountCritical() {
    cnt=res=t=mx=cntt=0;
    for (int i=0; i<n; i++) vs[i]=sm[i]=rem[i]=lvl[i]=0, t+=d[i].size()>2, mx=max(mx, (int)d[i].size()), cntt+=d[i].size()>3;
    for (int i=0; i<n; i++) if (!vs[i]) dfs(i, i);
    for (int i=0; i<n; i++) vs[i]=0;
    for (int i=0; i<n; i++) if (!vs[i]) dfs2(i, i);
    return res;
}
# Verdict Execution time Memory Grader output
1 Correct 11 ms 23900 KB Output is correct
2 Correct 11 ms 24156 KB Output is correct
3 Correct 12 ms 24152 KB Output is correct
4 Correct 10 ms 23900 KB Output is correct
5 Correct 11 ms 24252 KB Output is correct
6 Correct 11 ms 24412 KB Output is correct
7 Correct 10 ms 23900 KB Output is correct
8 Correct 12 ms 24152 KB Output is correct
9 Correct 12 ms 24156 KB Output is correct
10 Correct 12 ms 24156 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 322 ms 55124 KB Output is correct
2 Correct 690 ms 72528 KB Output is correct
3 Correct 729 ms 97616 KB Output is correct
4 Correct 916 ms 84924 KB Output is correct
5 Correct 933 ms 85588 KB Output is correct
6 Correct 927 ms 120656 KB Output is correct
7 Correct 720 ms 94588 KB Output is correct
8 Correct 873 ms 80612 KB Output is correct
9 Correct 911 ms 85072 KB Output is correct
10 Correct 758 ms 87892 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 11 ms 23900 KB Output is correct
2 Correct 11 ms 24156 KB Output is correct
3 Correct 12 ms 24152 KB Output is correct
4 Correct 10 ms 23900 KB Output is correct
5 Correct 11 ms 24252 KB Output is correct
6 Correct 11 ms 24412 KB Output is correct
7 Correct 10 ms 23900 KB Output is correct
8 Correct 12 ms 24152 KB Output is correct
9 Correct 12 ms 24156 KB Output is correct
10 Correct 12 ms 24156 KB Output is correct
11 Incorrect 19 ms 24152 KB Output isn't correct
12 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 11 ms 23900 KB Output is correct
2 Correct 11 ms 24156 KB Output is correct
3 Correct 12 ms 24152 KB Output is correct
4 Correct 10 ms 23900 KB Output is correct
5 Correct 11 ms 24252 KB Output is correct
6 Correct 11 ms 24412 KB Output is correct
7 Correct 10 ms 23900 KB Output is correct
8 Correct 12 ms 24152 KB Output is correct
9 Correct 12 ms 24156 KB Output is correct
10 Correct 12 ms 24156 KB Output is correct
11 Incorrect 19 ms 24152 KB Output isn't correct
12 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 11 ms 23900 KB Output is correct
2 Correct 11 ms 24156 KB Output is correct
3 Correct 12 ms 24152 KB Output is correct
4 Correct 10 ms 23900 KB Output is correct
5 Correct 11 ms 24252 KB Output is correct
6 Correct 11 ms 24412 KB Output is correct
7 Correct 10 ms 23900 KB Output is correct
8 Correct 12 ms 24152 KB Output is correct
9 Correct 12 ms 24156 KB Output is correct
10 Correct 12 ms 24156 KB Output is correct
11 Correct 322 ms 55124 KB Output is correct
12 Correct 690 ms 72528 KB Output is correct
13 Correct 729 ms 97616 KB Output is correct
14 Correct 916 ms 84924 KB Output is correct
15 Correct 933 ms 85588 KB Output is correct
16 Correct 927 ms 120656 KB Output is correct
17 Correct 720 ms 94588 KB Output is correct
18 Correct 873 ms 80612 KB Output is correct
19 Correct 911 ms 85072 KB Output is correct
20 Correct 758 ms 87892 KB Output is correct
21 Incorrect 19 ms 24152 KB Output isn't correct
22 Halted 0 ms 0 KB -