Submission #744924

# Submission time Handle Problem Language Result Execution time Memory
744924 2023-05-19T08:15:05 Z arush_agu Swapping Cities (APIO20_swap) C++17
0 / 100
2000 ms 18708 KB
#include <algorithm>
#include <cctype>
#include <cmath>
#include <cstdio>
#include <cstring>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
#include <functional>
#include <iomanip>
#include <iostream>
#include <iterator>
#include <list>
#include <map>
#include <numeric>
#include <queue>
#include <set>
#include <sstream>
#include <stack>
#include <string>
#include <unordered_map>
#include <unordered_set>
#include <vector>

#ifdef DEBUG
#include <time.h>
#endif

#define all(a) (a).begin(), (a).end()
#define rev(a) (a).rbegin(), (a).rend()
#define F first
#define S second
int recur_depth = 0;
#ifdef DEBUG
#define dbg(x)                                                                 \
  {                                                                            \
    ++recur_depth;                                                             \
    auto x_ = x;                                                               \
    --recur_depth;                                                             \
    cerr << string(recur_depth, '\t') << "\e[91m" << __func__ << ":"           \
         << __LINE__ << "\t" << #x << " = " << x_ << "\e[39m" << endl;         \
  }
#else
#define dbg(x)
#endif

using namespace std;
using namespace __gnu_pbds;

typedef pair<int, int> ii;

typedef long long ll;
typedef long double ld;
typedef pair<ll, ll> llll;

typedef vector<int> vi;
typedef vector<vi> vvi;
typedef vector<pair<int, int>> vii;
typedef vector<vii> vvii;

typedef vector<ll> vl;
typedef vector<vl> vvl;
typedef vector<pair<ll, ll>> vll;
typedef vector<vll> vvll;

typedef vector<bool> vb;

template <class type1>
using ordered_set = tree<type1, null_type, less<type1>, rb_tree_tag,
                         tree_order_statistics_node_update>;

template <typename A, typename B>
ostream &operator<<(ostream &os, const pair<A, B> &p) {
  return os << '(' << p.first << ", " << p.second << ')';
}
template <typename T_container, typename T = typename enable_if<
                                    !is_same<T_container, string>::value,
                                    typename T_container::value_type>::type>
ostream &operator<<(ostream &os, const T_container &v) {
  os << '{';
  string sep;
  for (const T &x : v)
    os << sep << x, sep = ", ";
  return os << '}';
}

const ll MOD = 1e9 + 7;
// const ll MOD = 998244353;
const ll INF = 1e9;
const ld EPS = 1e-9;

int n, m;
vl u, v, w;
vvll adj;

bool sub1 = 0;

void init(int nn, int mm, vi uu, vi vv, vi ww) {
  n = nn, m = mm;
  for (int &x : uu) u.push_back(x);
  for (int &x : vv) v.push_back(x);
  for (int &x : ww) w.push_back(x);
  adj = vvll(n);
  for (int i=0; i<m; i++) {
    adj[u[i]].push_back({v[i], w[i]});
    adj[v[i]].push_back({u[i], w[i]});
  }

  sub1 = 1;
  for (int i=0; i<m; i++) if (adj[i].size() > 2) {
    sub1 = 0; break;
  }
}

int getMinimumFuelCapacity(int x, int y) {
  if (sub1) {
    if (m == n - 1) return -1;
    assert(m == n);
    return *max_element(all(w));
  }
}

#ifdef DEBUG
void solve() {
  int n, m; cin >> n >> m;
  vi u(m), v(m), w(m);
  for (int i=0; i<m; i++) {
    cin >> u[i] >> v[i] >> w[i];
  }

  init(n, m, u, v, w);

  int q; cin >> q;
  while (q--) {
    int x, y; cin >> x >> y;
    cout << getMinimumFuelCapacity(x, y) << "\n";
  }
}

int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(NULL);

  clock_t start = clock();

  int test_cases = 1;
  /* cin >> test_cases; */

  while (test_cases--)
    solve();

  cerr << fixed << setprecision(10)
       << "\nTime Taken: " << (double)(clock() - start) / CLOCKS_PER_SEC
       << "s\n";
  return 0;
}
#endif

Compilation message

swap.cpp: In function 'int getMinimumFuelCapacity(int, int)':
swap.cpp:120:1: warning: control reaches end of non-void function [-Wreturn-type]
  120 | }
      | ^
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 304 KB Output is correct
5 Correct 1 ms 340 KB Output is correct
6 Correct 1 ms 308 KB Output is correct
7 Correct 1 ms 340 KB Output is correct
8 Correct 1 ms 340 KB Output is correct
9 Correct 41 ms 11568 KB Output is correct
10 Correct 55 ms 14072 KB Output is correct
11 Correct 50 ms 13816 KB Output is correct
12 Correct 52 ms 14632 KB Output is correct
13 Correct 54 ms 14600 KB Output is correct
14 Correct 44 ms 11836 KB Output is correct
15 Correct 100 ms 18220 KB Output is correct
16 Correct 96 ms 17816 KB Output is correct
17 Correct 103 ms 18708 KB Output is correct
18 Correct 108 ms 18692 KB Output is correct
19 Execution timed out 2066 ms 6064 KB Time limit exceeded
20 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Incorrect 99 ms 16940 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 304 KB Output is correct
5 Correct 1 ms 340 KB Output is correct
6 Correct 1 ms 308 KB Output is correct
7 Correct 1 ms 340 KB Output is correct
8 Correct 1 ms 340 KB Output is correct
9 Runtime error 1 ms 340 KB Execution killed with signal 6
10 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 1 ms 340 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 304 KB Output is correct
5 Correct 1 ms 340 KB Output is correct
6 Correct 1 ms 308 KB Output is correct
7 Correct 1 ms 340 KB Output is correct
8 Correct 1 ms 340 KB Output is correct
9 Correct 41 ms 11568 KB Output is correct
10 Correct 55 ms 14072 KB Output is correct
11 Correct 50 ms 13816 KB Output is correct
12 Correct 52 ms 14632 KB Output is correct
13 Correct 54 ms 14600 KB Output is correct
14 Correct 44 ms 11836 KB Output is correct
15 Correct 100 ms 18220 KB Output is correct
16 Correct 96 ms 17816 KB Output is correct
17 Correct 103 ms 18708 KB Output is correct
18 Correct 108 ms 18692 KB Output is correct
19 Incorrect 99 ms 16940 KB Output isn't correct
20 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 1 ms 340 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -