제출 #642602

#제출 시각아이디문제언어결과실행 시간메모리
642602danikoynovGame (APIO22_game)C++17
60 / 100
1071 ms5284 KiB
#include<bits/stdc++.h>
#define endl '\n'

using namespace std;
typedef long long ll;

const int maxk = 5010, maxn = 30010;
vector < int > g[maxn], ng[maxn];
int lat[maxn], erl[maxn], K;
int tf = 0;

void init(int n, int k)
{
    K = k;
    for (int i = 0; i < k - 1; i ++)
    {
        g[i].push_back(i + 1);
        ng[i + 1].push_back(i);
    }
    for (int i = 0; i < k; i ++)
        erl[i] = i, lat[i] = i - 1;
        for (int i = k; i < n; i ++)
            erl[i] = k, lat[i] = -1;

}

void update_erl(int v)
{
    if (lat[v] >= erl[v])
        tf = 1;
    for (int u : ng[v])
    {
        if (erl[v] < erl[u])
        {
            erl[u] = erl[v];
            update_erl(u);
        }
    }
}

void update_lat(int u)
{
    if (lat[u] >= erl[u])
        tf = 1;
    int mx = lat[u];
    if (u < K)
        mx = max(mx, u);
    for (int v : g[u])
    {
        if (lat[v] < mx)
        {
            lat[v] = mx;
            update_lat(v);
        }
    }
}
int add_teleporter(int u, int v)
{
    g[u].push_back(v);
    ng[v].push_back(u);
    if (erl[v] < erl[u])
    {
        erl[u] = erl[v];
        update_erl(u);
    }
    int mx = lat[u];
    if (u < K)
        mx = max(u, mx);
    if (mx > lat[v])
    {
        lat[v] = mx;
        update_lat(v);
    }
    return tf;
}

컴파일 시 표준 에러 (stderr) 메시지

game.cpp: In function 'void init(int, int)':
game.cpp:20:5: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
   20 |     for (int i = 0; i < k; i ++)
      |     ^~~
game.cpp:22:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
   22 |         for (int i = k; i < n; i ++)
      |         ^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...