# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
797629 | Osplei | Thousands Islands (IOI22_islands) | C++17 | 0 ms | 0 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
typedef pair<int,int> ii;
typedef long long ll;
typedef vector<int> vi;
typedef vector<vi> vvi;
typedef vector<ii> vii;
typedef vector<vii> wgraf;
typedef pair<int,ii> edge;
typedef vector <ll> vl;
typedef pair <ll, ll> LL;
typedef vector <LL> vll;
#define UNVISITED 0
#define VISITED 1
#define pb push_back
#define F first
#define S second
struct nodo{
int v, id;
};
variant <bool, vector <int>> find_journey(int N, int M, vector <int> U, vector <int> V){
vector <int> ans;
if (N==2){
int cont0=0, cont1=0;
vector <nodo> grafo[N+5];
for (ll i=0; i<M; i++) {
grafo[U[i]].pb({V[i], i});
if (U[i]==0) cont0++;
else cont1++;
}
if (cont0>=2 && cont1>=1){
ans.pb(grafo[0][0].id);
ans.pb(grafo[1][0].id);
ans.pb(grafo[0][1].id);
ans.pb(grafo[0][0].id);
ans.pb(grafo[1][0].id);
ans.pb(grafo[0][1].id);
} else return vector <int> ans;
} else return ans;
}