Submission #1256346

#TimeUsernameProblemLanguageResultExecution timeMemory
1256346WeIlIaNWorld Map (IOI25_worldmap)C++20
0 / 100
1 ms1092 KiB
#include "worldmap.h" #include <bits/stdc++.h> using namespace std; #define MOD1 1000000007 #define MOD2 998244353 #define fir first #define sec second #define pushf push_front #define pushb push_back #define popf pop_front #define popb pop_back #define mp make_pair #define all(a) a.begin(), a.end() #define FOR1(a) for (ll _ = 0; _ < ll(a); ++_) #define FOR2(i, a) for (ll i = 0; i < ll(a); ++i) #define FOR3(i, a, b) for (ll i = a; i < ll(b); ++i) #define RFOR1(a) for (ll _ = (a)-1; _ >= ll(0); --_) #define RFOR2(i, a) for (ll i = (a)-1; i >= ll(0); --i) #define RFOR3(i, a, b) for (ll i = (b)-1; i >= ll(a); --i) #define overload3(a, b, c, d, ...) d // Always choose the fourth argument to call. Hence, which function to call is determined by the number of given arguments. #define REP(...) overload3(__VA_ARGS__, FOR3, FOR2, FOR1)(__VA_ARGS__) #define RREP(...) overload3(__VA_ARGS__, RFOR3, RFOR2, RFOR1)(__VA_ARGS__) typedef long long ll; typedef pair<int, int> pii; typedef vector<int> vi; typedef pair<ll, ll> pll; typedef vector<ll> vll; typedef vector<bool> vb; typedef vector<char> vc; typedef vector<string> vs; typedef vector<pii> vpii; typedef vector<pll> vpll; typedef vector<vi> vvi; typedef vector<vll> vvll; typedef vector<vb> vvb; typedef vector<vc> vvc; typedef vector<vpii> vvpii; typedef vector<vpll> vvpll; typedef queue<int> qi; typedef queue<ll> qll; typedef queue<pii> qpii; typedef queue<pll> qpll; typedef deque<int> dqi; typedef deque<ll> dqll; typedef deque<pii> dqpii; typedef deque<pll> dqpll; typedef priority_queue<int> pqi; typedef priority_queue<ll> pqll; typedef priority_queue<pii> pqpii; typedef priority_queue<pll> pqpll; typedef priority_queue<int, vi, greater<int> > r_pqi; typedef priority_queue<ll, vll, greater<ll> > r_pqll; typedef priority_queue<pii, vpii, greater<pii> > r_pqpii; typedef priority_queue<pll, vpll, greater<pll> > r_pqpll; vi seq; vb vis; vi pos; vvi adj; void dfs(int u) { vis[u] = true; seq.pushb(u); pos[u] = seq.size(); seq.pushb(u); seq.pushb(u); int l = adj[u].size(); REP(i, l) { int v = adj[u][i]; if(vis[v]) { continue; } dfs(v); seq.pushb(u); } } vvi create_map(int n, int m, vi A, vi B) { adj = vvi(n+1); vis = vb(n+1); pos = vi(n+1); REP(i, m) { adj[A[i]].pushb(B[i]); adj[B[i]].pushb(A[i]); } dfs(1); int h = seq.size(); vvi ans(h, vi(h, 0)); REP(i, h) { REP(j, h) { ans[i][j] = seq[i]; } } return ans; }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...