Submission #406752

#TimeUsernameProblemLanguageResultExecution timeMemory
406752Maqsut_03Swapping Cities (APIO20_swap)C++14
0 / 100
122 ms29800 KiB
#include "swap.h" #include <bits/stdc++.h> #define ll long long #define pl pair<ll, ll> #define llv vector<ll> #define pv vector<pl> #define pb push_back #define ppb(x, y) push_back({x, y}) #define ff first #define ss second #define sz size() using namespace std; const int NN = 2 * 1e5 + 3, MOD = 1e9 + 7; pl u0[NN]; pv v[NN]; ll n, m, k, d, u[NN]; bool f, f1, f2, f3; void init(int N, int M, vector<int> U, vector<int> V, vector<int> W) { n = N; m = M; for (int i=0; i<m; i++) { v[V[i]].ppb(U[i], W[i]); v[U[i]].ppb(V[i], W[i]); k = max(k, 1ll * W[i]); u0[i] = {W[i], V[i]}; } sort(u0, u0 + m); for (int i=0; i<m; i++) u[u0[i].ff] = u0[i].ss; d = u[2]; int p = 0, q = 0; for (int i=0; i<n; i++) { if (v[i].sz == 1) q++; if (v[i].sz == 2) p++; } if (q == 2 && q + p == n) f = 1; if (m == n - 1 && v[0].sz == m) f1 = 1; f2 = 1; for (int i=0; i<n; i++) { if(v[i].sz != 2) { f2 = 0; break; } } return ; } int getMinimumFuelCapacity(int X, int Y) { if (f) return -1; if (f2) return k; if (f1) return max({d, 1ll*u[X], 1ll*u[Y]}); }

Compilation message (stderr)

swap.cpp: In function 'void init(int, int, std::vector<int>, std::vector<int>, std::vector<int>)':
swap.cpp:44:28: warning: comparison of integer expressions of different signedness: 'std::vector<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} and 'long long int' [-Wsign-compare]
   44 |  if (m == n - 1 && v[0].sz == m) f1 = 1;
      |                    ~~~~~~~~^~~~
swap.cpp: In function 'int getMinimumFuelCapacity(int, int)':
swap.cpp:62:1: warning: control reaches end of non-void function [-Wreturn-type]
   62 | }
      | ^
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...