#include "cmp.h"
#include <bits/stdc++.h>
#define ll long long
#define el cout << endl;
using namespace std;
const int BASE = 4;
const int maxlog = 6;
vector<int> trans(int n)
{
vector<int> val;
for (int _ = 1; _ <= maxlog; _++, n /= BASE)
val.push_back(n % BASE);
reverse(val.begin(), val.end());
return val;
}
int get_pre(vector<int> val, int p)
{
int ans = 1;
for (int i = 0; i <= p; i++)
ans = ans * BASE + val[i];
return ans;
}
namespace personA
{
void remember(int a)
{
vector<int> val = trans(a);
for (int i = 0; i < val.size(); i++)
bit_set(get_pre(val, i));
// for (int x : val)
// cout << x << ' ';
// el;
}
}
namespace personB
{
int compare(int b)
{
vector<int> val = trans(b);
// for (int x : val)
// cout << x << ' ';
// el;
auto find_p = [=] ()
{
int l = 0, r = maxlog - 1, ans = -1;
while (l <= r)
{
int m = l + r >> 1;
if (bit_get(get_pre(val, m)))
{
ans = m;
l = m + 1;
}
else
r = m - 1;
}
return ans;
};
int p = find_p();
if (p == maxlog - 1)
return 0;
// cout << p << ' ' << val[p + 1] << ' ' << get_pre(val, p), el;
if (val[p + 1] <= 1)
{
if (bit_get(BASE * get_pre(val, p)))
return 1;
return -1;
}
if (bit_get(BASE * get_pre(val, p) + 3))
return -1;
return 1;
}
}
void remember(int a)
{
personA::remember(a);
}
int compare(int b)
{
return personB::compare(b);
}