답안 #1035197

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
1035197 2024-07-26T06:18:52 Z 12345678 낙하산 고리들 (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;
}
# 결과 실행 시간 메모리 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
# 결과 실행 시간 메모리 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
# 결과 실행 시간 메모리 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 -
# 결과 실행 시간 메모리 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 -
# 결과 실행 시간 메모리 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 -