Submission #397830

# Submission time Handle Problem Language Result Execution time Memory
397830 2021-05-03T08:27:08 Z yuto1115 Swapping Cities (APIO20_swap) C++17
7 / 100
146 ms 15760 KB
#include "swap.h"
#include <bits/stdc++.h>
#define rep(i, n) for(ll i = 0; i < ll(n); i++)
#define rep2(i, s, n) for(ll i = ll(s); i < ll(n); i++)
#define all(a) a.begin(),a.end()
#define rall(a) a.rbegin(),a.rend()
#define pb push_back
#define eb emplace_back
using namespace std;
using ll = long long;
using P = pair<int, int>;
using vi = vector<int>;
using vvi = vector<vi>;
using vl = vector<ll>;
using vvl = vector<vl>;
using vp = vector<P>;
using vvp = vector<vp>;
using vb = vector<bool>;
using vvb = vector<vb>;

template<class T>
bool chmin(T &a, T b) {
    if (a > b) {
        a = b;
        return true;
    }
    return false;
}

template<class T>
bool chmax(T &a, T b) {
    if (a < b) {
        a = b;
        return true;
    }
    return false;
}

const int inf = 1001001001;

namespace {
    int n;
    vvp G;
}

void init(int _n, int m, vi u, vi v, vi w) {
    n = _n;
    G.resize(n);
    rep(i, m) {
        G[u[i]].eb(v[i], w[i]);
        G[v[i]].eb(u[i], w[i]);
    }
    sort(all(G[0]), [](P a, P b) { return a.second < b.second; });
}

// subtask 2
int getMinimumFuelCapacity(int x, int y) {
    if (n <= 3) return -1;
    if (x == 0) {
        int ans = G[y][0].second;
        int cnt = 0;
        for (auto[v, w] : G[0]) {
            if (v == y) continue;
            chmax(ans, w);
            cnt++;
            if (cnt == 2) break;
        }
        return ans;
    } else {
        int ans = max(G[x][0].second, G[y][0].second);
        for (auto[v, w] : G[0]) {
            if (v == x or v == y) continue;
            chmax(ans, w);
            break;
        }
        return ans;
    }
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
4 Incorrect 1 ms 204 KB Output isn't correct
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 144 ms 11680 KB Output is correct
4 Correct 117 ms 15520 KB Output is correct
5 Correct 146 ms 15756 KB Output is correct
6 Correct 123 ms 15392 KB Output is correct
7 Correct 122 ms 15760 KB Output is correct
8 Correct 124 ms 15208 KB Output is correct
9 Correct 122 ms 15508 KB Output is correct
10 Correct 136 ms 15252 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
4 Incorrect 1 ms 204 KB Output isn't correct
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
4 Incorrect 1 ms 204 KB Output isn't correct
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
4 Incorrect 1 ms 204 KB Output isn't correct
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
4 Incorrect 1 ms 204 KB Output isn't correct
5 Halted 0 ms 0 KB -