#include
#include
#include
#include
#include
#include
#pragma GCC optimize("Ofast")
using namespace std;
int rand_int(int a, int b);
void non_repeat(int n, int* a) {
set s;
default_random_engine e(time(0));
while (s.size() != n) {
int m = e();
if (s.empty())
s.insert(m);
else if (s.find(m) == s.end())
s.insert(m);
}
int i = 0;
for (set::iterator it = s.begin(); it != s.end(); it++)
{
a[i++] = *it;
}
}
void shuffle(int n, int* a) {
for (int i = 0; i x)
return search_x(x, head, ptr, val);
else if (val[m]