Submission #954416

#TimeUsernameProblemLanguageResultExecution timeMemory
954416efishelAirline Route Map (JOI18_airline)C++17
37 / 100
3083 ms40956 KiB
#include "Alicelib.h" #include <cassert> #include <cstdio> #include <bits/stdc++.h> #include <vector> using namespace std; using ll = long long; using vll = vector <ll>; void Alice (int n, int m, int A[], int B[]) { bool mat[n][n]{}; for (ll i = 0; i < m; i++) { mat[A[i]][B[i]] = true; mat[B[i]][A[i]] = true; } vector <bool> th; for (ll i = 0; i < n; i++) { for (ll j = i; j < n; j++) { th.push_back(mat[i][j]); } } vector <pair <ll, ll> > egs; for (ll i = 0; i < th.size(); i++) { egs.push_back({ i, i+1 }); if (th[i]) egs.push_back({ 0, i+1 }); } for (auto [u, v] : egs) cerr << u << ' ' << v << '\n'; InitG(th.size()+1+6, egs.size()+9); ll i=th.size()+2; for (ll j = 0; j < 4; j++) egs.push_back({ i+j, i+j+1 }); for (ll j = i; j < i+5; j++) egs.push_back({ 0, j }); ll timer=0; for (auto [u, v] : egs) MakeG(timer++, u, v); }
#include "Boblib.h" #include <cassert> #include <cstdio> #include <bits/stdc++.h> #include <vector> using namespace std; using ll = long long; using vll = vector <ll>; const ll MAXN = 1E6+16; vll adj[MAXN]; void Bob (int n, int m, int A[], int B[]) { cerr << "BOB\n"; for (ll i = 0; i < m; i++) { adj[A[i]].push_back(B[i]); adj[B[i]].push_back(A[i]); cerr << A[i] << ' ' << B[i] << '\n'; } cerr << "\n"; ll sp = -15, best=0; ll nd = -15; for (ll i = 0; i < n; i++) { if (adj[i].size() > best) best = adj[i].size(), sp = i; if (adj[i].size() == 1) nd = i; } cerr << "special: " << sp << '\n'; cerr << "end: " << nd << '\n'; vector <bool> th; function <void(ll, ll)> dfs = [&](ll u, ll par) { bool has1 = false; for (ll v : adj[u]) { if (v == sp) { has1 = true; continue; } if (v == par) continue; dfs(v, u); } th.push_back(has1); }; dfs(nd, nd); ll nn = 0; while (nn*(nn+1)/2 < th.size()) nn++; bool mat[nn][nn]{}; ll c = 0; vector <pair <ll, ll> > egs; for (ll i = 0; i < nn; i++) { for (ll j = i; j < nn; j++) { if (th[c++] && !(i==0 && j==0)) egs.push_back({ i, j }); } } for (auto [u, v] : egs) cerr << u << ' ' << v << '\n'; InitMap(nn, egs.size()); for (auto [u, v] : egs) MakeMap(u, v); }

Compilation message (stderr)

Alice.cpp: In function 'void Alice(int, int, int*, int*)':
Alice.cpp:23:22: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::vector<bool>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   23 |     for (ll i = 0; i < th.size(); i++) {
      |                    ~~^~~~~~~~~~~

Bob.cpp: In function 'void Bob(int, int, int*, int*)':
Bob.cpp:24:27: warning: comparison of integer expressions of different signedness: 'std::vector<long long int>::size_type' {aka 'long unsigned int'} and 'll' {aka 'long long int'} [-Wsign-compare]
   24 |         if (adj[i].size() > best) best = adj[i].size(), sp = i;
      |             ~~~~~~~~~~~~~~^~~~~~
Bob.cpp:41:24: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::vector<bool>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   41 |     while (nn*(nn+1)/2 < th.size()) nn++;
      |            ~~~~~~~~~~~~^~~~~~~~~~~
Bob.cpp:42:10: warning: unused variable 'mat' [-Wunused-variable]
   42 |     bool mat[nn][nn]{};
      |          ^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...