Solution to Xenia and Tree. This is the cleanest i could make it
#include <bits/stdc++.h>using namespace std;typedef long long ll;typedef long double ld;typedef vector<int> vi;typedef pair<int, int> pii;typedef vector<pii> vii;typedef vector<ll> vll;#define F first#define S second#define PB push_back#define MP make_pair#define INF (1<<29)#define eps (1e-7)#define MOD (1000000007)#define mem(arr, val) memset((arr), (int)(val), sizeof (arr))#define REP(i, a, b) for (int i=a; i<=b; i++)#define REPn(i, a, b) for (int i=a; i>=b; i--)#define FOR(i, n) REP(i, 0, n-1)#define FORn(j, n) REPn(j, n-1, 0)