답안 #436997

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
436997 2021-06-25T14:14:58 Z idas Cheap flights (LMIO18_pigus_skrydziai) C++11
0 / 100
1364 ms 91840 KB
#include <bits/stdc++.h>
#define FOR(i, begin, end) for(int i = (begin); i < (end); i++)
#define FAST_IO ios_base::sync_with_stdio(false); cin.tie(nullptr)
#define F first
#define S second
#define PB push_back
#define MP make_pair

using namespace std;
typedef pair<int, int> pii;
typedef vector<int> vi;
typedef long long ll;

void setIO()
{
    FAST_IO;
}

const int N=3e5+100, M=5e5+100;

int n, m, cnt[N];
vector<pii> ad[N];
set<pii> ins;
bool v[N];

void dfs(int u, int pst)
{
    v[u]=true;
    for(auto it : ad[u])
    {
        int b=it.F, w=it.S;
        cnt[u]+=w;
        cnt[b]+=w;
        if(!v[b])
            dfs(b, u);
        else if(b!=pst)
        {
            ins.insert(MP(min(u, b), max(u, b)));
        }
    }
}

map<int, bool> con[N];
map<pii, int> pth;

int main()
{
    setIO();
    cin >> n >> m;
    FOR(i, 0, m)
    {
        int a, b, c;
        cin >> a >> b >> c;
        con[a][b]=true;
        con[b][a]=true;
        ad[a-1].PB(MP(b-1, c));
        ad[b-1].PB(MP(a-1, c));
        pth[MP(min(a-1, b-1), max(a-1, b-1))]=c;
    }

    dfs(0, -1);

    int mx=-1;
    FOR(i, 0, n) mx=max(mx, cnt[i]/2);

    for(auto[x, y] : ins)
    {
        FOR(i, 0, n)
        {
            if(i==x||i==y) continue;
            if(con[x][i] && con[y][i])
            {
                int tot=pth[MP(min(x, y), max(x, y))]+
                pth[MP(min(x, i), max(x, i))]+
                pth[MP(min(y, i), max(y, i))];

                mx=max(mx, tot);
            }
        }
    }

    cout << mx;
}

Compilation message

pigus_skrydziai.cpp: In function 'int main()':
pigus_skrydziai.cpp:66:13: warning: structured bindings only available with '-std=c++17' or '-std=gnu++17'
   66 |     for(auto[x, y] : ins)
      |             ^
# 결과 실행 시간 메모리 Grader output
1 Correct 14 ms 21452 KB Output is correct
2 Correct 17 ms 21472 KB Output is correct
3 Correct 16 ms 21348 KB Output is correct
4 Correct 16 ms 21360 KB Output is correct
5 Correct 14 ms 21372 KB Output is correct
6 Correct 1364 ms 26192 KB Output is correct
7 Correct 14 ms 21452 KB Output is correct
8 Incorrect 14 ms 21432 KB Output isn't correct
9 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 14 ms 21452 KB Output is correct
2 Correct 17 ms 21472 KB Output is correct
3 Correct 16 ms 21348 KB Output is correct
4 Correct 16 ms 21360 KB Output is correct
5 Correct 14 ms 21372 KB Output is correct
6 Correct 1364 ms 26192 KB Output is correct
7 Correct 14 ms 21452 KB Output is correct
8 Incorrect 14 ms 21432 KB Output isn't correct
9 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 372 ms 54324 KB Output is correct
2 Correct 989 ms 91840 KB Output is correct
3 Incorrect 268 ms 44868 KB Output isn't correct
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 372 ms 54324 KB Output is correct
2 Correct 989 ms 91840 KB Output is correct
3 Incorrect 268 ms 44868 KB Output isn't correct
4 Halted 0 ms 0 KB -