QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#787786#9669. Function QueryN_z_AC ✓277ms67732kbC++237.4kb2024-11-27 14:37:352024-11-27 16:16:29

Judging History

你现在查看的是最新测评结果

  • [2024-11-27 16:16:29]
  • 自动重测本题所有获得100分的提交记录
  • 测评结果:AC
  • 用时:277ms
  • 内存:67732kb
  • [2024-11-27 16:16:04]
  • hack成功,自动添加数据
  • (/hack/1261)
  • [2024-11-27 14:37:35]
  • 评测
  • 测评结果:100
  • 用时:316ms
  • 内存:67056kb
  • [2024-11-27 14:37:35]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
struct time_helper{
#ifdef LOCAL
clock_t time_last;time_helper(){time_last=clock();}void test(){auto time_now=clock();std::cerr<<"time:"<<1.*(time_now-time_last)/CLOCKS_PER_SEC<<";all_time:"<<1.*time_now/CLOCKS_PER_SEC<<std::endl;time_last=time_now;}~time_helper(){test();}
#else
void test(){}
#endif
}time_helper;
#ifdef LOCAL
#include"dbg.h"
#else
#define dbg(...) (__VA_ARGS__)
#endif
namespace Fread{const int SIZE=1<<16;char buf[SIZE],*S,*T;inline char getchar(){if(S==T){T=(S=buf)+fread(buf,1,SIZE,stdin);if(S==T)return'\n';}return *S++;}}namespace Fwrite{const int SIZE=1<<16;char buf[SIZE],*S=buf,*T=buf+SIZE;inline void flush(){fwrite(buf,1,S-buf,stdout);S=buf;}inline void putchar(char c){*S++=c;if(S==T)flush();}struct NTR{~NTR(){flush();}}ztr;}
#define getchar Fread::getchar
#define putchar Fwrite::putchar
int print_precision=10;bool print_T_endl=1;char print_between=' ';
template<typename T>struct is_char{static constexpr bool value=(std::is_same<T,char>::value||std::is_same<T,signed char>::value||std::is_same<T,unsigned char>::value);};template<typename T>struct is_integral_ex{static constexpr bool value=(std::is_integral<T>::value||std::is_same<T,__int128>::value)&&!is_char<T>::value;};template<typename T>struct is_floating_point_ex{static constexpr bool value=std::is_floating_point<T>::value||std::is_same<T,__float128>::value;};namespace Fastio{struct Reader;struct Writer;template<size_t id>struct read_tuple{template<typename...T>static void read(Reader&stream,std::tuple<T...>&x){read_tuple<id-1>::read(stream,x);stream>>get<id-1>(x);}};template<>struct read_tuple<0>{template<typename...T>static void read([[maybe_unused]]Reader&stream,[[maybe_unused]]std::tuple<T...>&x){}};template<size_t id>struct print_tuple{template<typename...T>static void print(Writer&stream,const std::tuple<T...>&x){print_tuple<id-1>::print(stream,x);putchar(print_between);stream<<get<id-1>(x);}};template<>struct print_tuple<1>{template<typename...T>static void print(Writer&stream,const std::tuple<T...>&x){stream<<get<0>(x);}};template<>struct print_tuple<0>{template<typename...T>static void print([[maybe_unused]]Writer&stream,[[maybe_unused]]const std::tuple<T...>&x){}};
struct Reader{template<typename T>typename std::enable_if_t<std::is_class<T>::value,Reader&>operator>>(T&x){for(auto &y:x)*this>>y;return *this;}template<typename...T>Reader&operator>>(std::tuple<T...>&x){read_tuple<sizeof...(T)>::read(*this,x);return *this;}template<typename T>typename std::enable_if_t<is_integral_ex<T>::value,Reader&>operator>>(T&x){char c=getchar();short f=1;while(c<'0'||c>'9'){if(c=='-')f*=-1;c=getchar();}x=0;while(c>='0'&&c<='9'){x=(x<<1)+(x<<3)+(c^48);c=getchar();}x*=f;return *this;}template<typename T>typename std::enable_if_t<is_floating_point_ex<T>::value,Reader&>operator>>(T&x){char c=getchar();short f=1,s=0;x=0;T t=0;while((c<'0'||c>'9')&&c!='.'){if(c=='-')f*=-1;c=getchar();}while(c>='0'&&c<='9'&&c!='.')x=x*10+(c^48),c=getchar();if(c=='.')c=getchar();else return x*=f,*this;while(c>='0'&&c<='9')t=t*10+(c^48),s++,c=getchar();while(s--)t/=10.0;x=(x+t)*f;return*this;}template<typename T>typename std::enable_if_t<is_char<T>::value,Reader&>operator>>(T&c){c=getchar();while(c=='\n'||c==' '||c=='\r')c=getchar();return *this;}Reader&operator>>(char*str){int len=0;char c=getchar();while(c=='\n'||c==' '||c=='\r')c=getchar();while(c!='\n'&&c!=' '&&c!='\r')str[len++]=c,c=getchar();str[len]='\0';return*this;}template<typename T1,typename T2>Reader&operator>>(std::pair<T1,T2>&x){*this>>x.first>>x.second;return *this;}Reader&operator>>(std::string&str){str.clear();char c=getchar();while(c=='\n'||c==' '||c=='\r')c=getchar();while(c!='\n'&&c!=' '&&c!='\r')str.push_back(c),c=getchar();return*this;}Reader(){}}cin;const char endl='\n';
struct Writer{typedef __int128 mxdouble;template<typename T>typename std::enable_if_t<std::is_class<T>::value,Writer&>operator<<(const T&x){for(auto q:x){*this<<q;if(!is_class<decltype(q)>::value)*this<<print_between;}if(!is_class<typename T::value_type>::value&&print_T_endl)*this<<'\n';return *this;}template<typename...T>Writer&operator<<(const std::tuple<T...>&x){print_tuple<sizeof...(T)>::print(*this,x);if(print_T_endl)*this<<'\n';return *this;}template<typename T>typename std::enable_if_t<is_integral_ex<T>::value,Writer&>operator<<(T x){if(x==0)return putchar('0'),*this;if(x<0)putchar('-'),x=-x;static int sta[45];int top=0;while(x)sta[++top]=x%10,x/=10;while(top)putchar(sta[top]+'0'),--top;return*this;}template<typename T>typename std::enable_if_t<is_floating_point_ex<T>::value,Writer&>operator<<(T x){if(x<0)putchar('-'),x=-x;x+=pow(10,-print_precision)/2;mxdouble _=x;x-=(T)_;static int sta[45];int top=0;while(_)sta[++top]=_%10,_/=10;if(!top)putchar('0');while(top)putchar(sta[top]+'0'),--top;putchar('.');for(int i=0;i<print_precision;i++)x*=10;_=x;while(_)sta[++top]=_%10,_/=10;for(int i=0;i<print_precision-top;i++)putchar('0');while(top)putchar(sta[top]+'0'),--top;return*this;}template<typename T>typename std::enable_if_t<is_char<T>::value,Writer&>operator<<(const T&c){putchar(c);return*this;}Writer&operator<<(char*str){int cur=0;while(str[cur])putchar(str[cur++]);return *this;}Writer&operator<<(const char*str){int cur=0;while(str[cur])putchar(str[cur++]);return*this;}template<typename T1,typename T2>Writer&operator<<(const std::pair<T1,T2>&x){*this<<x.first<<print_between<<x.second;if(print_T_endl)*this<<'\n';return *this;}Writer&operator<<(const std::string&str){int st=0,ed=str.size();while(st<ed)putchar(str[st++]);return*this;}Writer(){}}cout;}
#define cin Fastio::cin
#define cout Fastio::cout
#define endl Fastio::endl
template<class Fun>class y_combinator_result{Fun fun_;public:template<class T>explicit y_combinator_result(T &&fun): fun_(std::forward<T>(fun)) {}template<class ...Args>decltype(auto) operator()(Args &&...args){return fun_(std::ref(*this), std::forward<Args>(args)...);}};template<class Fun>decltype(auto) y_combinator(Fun &&fun){return y_combinator_result<std::decay_t<Fun>>(std::forward<Fun>(fun));}

void init();void solve(int tc);
main()
{
    init();int t=1;
    // cin>>t;
    for(int tc=1;tc<=t;tc++)solve(tc);
}
void init()
{
}
void solve([[maybe_unused]]int tc)
{
    int n,q;
    cin>>n>>q;
    vector<int>v(n+1);
    vector<int>tr(1);
    vector<array<int,2>>son(1);
    auto insert=[&](int pos,int val)
    {
        int now=0;
        for(int x=30;x>=0;x--)
        {
            if(!son[now][pos>>x&1])
            {
                son[now][pos>>x&1]=son.size();
                son.push_back({0,0});
                tr.push_back(0);
            }
            now=son[now][pos>>x&1];
        }
        tr[now]=val;
    };
    auto query=[&](int pos)
    {
        int now=0;
        for(int x=30;x>=0;x--)
        {
            if(son[now][pos>>x&1])now=son[now][pos>>x&1];
            else now=son[now][pos>>x&1^1];
        }
        return tr[now];
    };
    for(int x=1;x<=n;x++)
    cin>>v[x],insert(v[x],x);
    while(q--)
    {
        int a,b;
        cin>>a>>b;
        int vl=query(a),vr=query(~a);
        if(vl>vr)swap(vl,vr);
        if(vl==vr){if(vl==1)vr++;else vl--;}
        if(1ll*((a^v[vl])-b)*((a^v[vr])-b)>0)
        {
            cout<<-1<<endl;
            continue;
        }
        while(vl+1<vr)
        {
            int mi=(vl+vr)/2;
            if(1ll*((a^v[vl])-b)*((a^v[mi])-b)>0)vl=mi;
            else vr=mi;
        }
        cout<<vl<<endl;
    }
}

这程序好像有点Bug,我给组数据试试?

详细

Test #1:

score: 100
Accepted
time: 0ms
memory: 3804kb

input:

5 6
3 5 1 2 4
0 2
1 1
2 3
3 2
4 2
5 8

output:

2
3
2
1
4
-1

result:

ok ok

Test #2:

score: 0
Accepted
time: 0ms
memory: 3612kb

input:

2 1
3 3
0 3

output:

1

result:

ok ok

Test #3:

score: 0
Accepted
time: 62ms
memory: 4420kb

input:

300000 300000
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...

output:

209610
209610
119478
119478
149700
269763
89695
59791
209610
209610
149700
209610
269763
59791
-1
89695
209610
209610
209610
179614
89695
149700
209610
209610
209610
269763
89695
149700
209610
209610
209610
209610
29721
89695
209610
89695
89695
89695
209610
29721
89695
209610
89695
89695
149700
1497...

result:

ok ok

Test #4:

score: 0
Accepted
time: 60ms
memory: 4392kb

input:

300000 300000
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...

output:

59824
29872
239818
120024
269973
120024
209816
120024
29872
120024
120024
29872
179677
209816
90063
90063
59824
29872
209816
120024
59824
209816
120024
149876
179677
59824
29872
149876
120024
149876
59824
269973
209816
179677
29872
120024
239818
149876
179677
29872
239818
29872
149876
149876
120024
...

result:

ok ok

Test #5:

score: 0
Accepted
time: 59ms
memory: 4340kb

input:

299999 300000
999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999...

output:

59912
89929
59912
269781
269781
119893
59912
59912
59912
269781
269781
59912
59912
209643
269781
269781
209643
59912
269781
-1
269781
269781
149833
269781
269781
269781
269781
269781
149833
59912
269781
119893
59912
59912
269781
59912
269781
209643
149833
59912
59912
269781
269781
269781
269781
5991...

result:

ok ok

Test #6:

score: 0
Accepted
time: 68ms
memory: 4320kb

input:

299999 300000
999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999990 999999...

output:

149501
149501
269967
59597
149501
269967
269967
59597
179553
59597
269967
269967
269967
209808
149501
209808
59597
149501
119571
59597
59597
269967
269967
269967
269967
209808
269967
269967
59597
59597
269967
149501
59597
269967
209808
149501
269967
59597
59597
59597
269967
269967
209808
269967
2699...

result:

ok ok

Test #7:

score: 0
Accepted
time: 80ms
memory: 4464kb

input:

300000 300000
5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 ...

output:

153067
153067
-1
153067
153067
114235
-1
233864
153067
-1
-1
114235
153067
153067
-1
153067
-1
59939
-1
-1
153067
62885
153067
153067
153067
-1
192250
-1
-1
11995
-1
-1
62885
-1
153067
153067
-1
62885
210256
233864
290975
-1
126309
-1
-1
114235
-1
50934
-1
153067
-1
114235
39023
-1
-1
62885
-1
25791...

result:

ok ok

Test #8:

score: 0
Accepted
time: 55ms
memory: 4412kb

input:

300000 300000
9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 ...

output:

153157
-1
-1
-1
-1
80636
281910
-1
201058
132105
-1
65745
245980
-1
2965
-1
-1
-1
17964
-1
195073
-1
195073
-1
201058
-1
-1
177103
269817
-1
71754
219008
-1
248865
-1
27020
147070
-1
86719
224959
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
80636
-1
-1
-1
-1
281910
180088
17964
123018
201058
-1
-1
86719
-1
2398...

result:

ok ok

Test #9:

score: 0
Accepted
time: 150ms
memory: 4536kb

input:

299999 300000
4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 4583175 458317...

output:

158339
158339
71398
158339
89629
44602
71398
158339
164479
158339
254981
188541
158339
197572
158339
158339
158339
158339
158339
158339
125297
17700
158339
197572
158339
158339
158339
125297
158339
288007
71398
-1
71398
158339
264004
158339
158339
254981
95610
125297
161432
158339
158339
98518
19757...

result:

ok ok

Test #10:

score: 0
Accepted
time: 147ms
memory: 4616kb

input:

300000 300000
788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806 788806...

output:

167793
167793
167793
56877
167793
258008
167793
164917
258008
218910
167793
167793
156030
167793
167793
167793
167793
167793
258008
138187
167793
138187
167793
167793
194783
167793
47858
104896
167793
92835
203749
185730
167793
167793
248950
167793
203749
185730
167793
288039
-1
167793
156030
-1
167...

result:

ok ok

Test #11:

score: 0
Accepted
time: 83ms
memory: 4356kb

input:

299999 300000
963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355592 963355...

output:

299998
-1
-1
-1
299998
299998
-1
-1
299998
299998
299998
-1
299998
299998
299998
299998
299998
299998
-1
-1
299998
299998
-1
-1
299998
299998
299998
299998
-1
299998
-1
-1
-1
-1
-1
299998
-1
-1
-1
-1
299998
-1
299998
-1
299998
299998
299998
299998
-1
-1
299998
-1
-1
299998
299998
299998
299998
-1
29...

result:

ok ok

Test #12:

score: 0
Accepted
time: 78ms
memory: 4388kb

input:

300000 300000
231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122736 231122...

output:

299999
-1
299999
299999
-1
-1
-1
299999
-1
299999
299999
299999
299999
299999
299999
299999
299999
299999
-1
-1
299999
-1
-1
299999
-1
299999
299999
299999
299999
299999
299999
-1
-1
299999
299999
-1
-1
299999
299999
-1
-1
299999
299999
299999
-1
299999
-1
-1
299999
299999
-1
-1
-1
299999
-1
299999
...

result:

ok ok

Test #13:

score: 0
Accepted
time: 45ms
memory: 4388kb

input:

300000 300000
2 1 3 5 0 3 3 2 2 4 1 4 1 4 0 0 1 3 0 1 2 5 1 5 1 5 1 3 0 1 0 2 5 1 1 3 1 3 0 2 5 5 5 0 5 4 5 5 5 2 0 5 0 4 3 0 2 5 3 1 4 1 4 1 1 2 3 4 3 5 0 0 4 2 0 1 5 1 0 1 5 0 3 5 4 0 0 4 1 4 4 1 4 2 3 1 2 5 5 2 0 2 5 1 2 2 5 0 4 1 5 4 0 1 3 3 3 4 1 2 3 1 4 4 2 3 0 1 3 3 1 3 3 4 5 1 4 3 1 3 1 4 0 ...

output:

299999
-1
-1
299993
-1
-1
299996
299999
299996
299993
299999
299996
299999
299999
299993
299999
-1
299996
299999
299996
299993
299993
-1
299993
-1
299999
299994
-1
-1
299999
-1
299996
-1
299996
299999
-1
299996
-1
299993
-1
299999
-1
299993
-1
-1
299985
-1
-1
299999
299996
-1
-1
299999
299999
299996...

result:

ok ok

Test #14:

score: 0
Accepted
time: 52ms
memory: 4340kb

input:

300000 300000
3 3 5 4 1 5 4 4 4 5 4 5 1 4 5 3 2 3 3 4 2 2 1 5 1 4 2 1 5 3 1 1 2 2 3 1 5 5 4 5 4 3 3 1 4 5 2 3 2 4 5 1 4 4 4 4 2 1 5 1 3 4 1 5 4 4 5 4 5 3 2 4 1 5 3 3 5 1 3 1 2 4 2 3 2 2 5 4 5 4 4 1 3 1 3 1 5 1 5 5 3 5 3 5 3 3 4 5 1 5 5 3 5 5 3 4 4 2 2 3 2 2 1 2 2 3 1 4 3 1 4 3 4 2 4 2 4 2 3 4 3 5 2 ...

output:

-1
299988
299997
-1
299994
299991
-1
-1
-1
-1
299996
299996
-1
-1
-1
299991
299994
299999
-1
299997
-1
299999
299997
-1
-1
-1
299997
299998
299999
299991
-1
299996
299998
-1
299991
299991
299996
-1
299996
299994
299996
-1
-1
-1
299998
299998
-1
-1
-1
299999
-1
-1
299994
299991
-1
-1
299996
299988
29...

result:

ok ok

Test #15:

score: 0
Accepted
time: 44ms
memory: 4372kb

input:

300000 300000
0 2 0 2 5 2 0 3 4 3 3 0 1 2 0 0 5 1 1 1 1 1 4 1 0 4 0 2 5 4 2 2 5 4 0 4 2 5 4 3 0 0 0 5 5 3 1 3 1 0 4 0 1 2 0 1 0 4 0 1 3 0 5 3 3 0 1 5 5 2 5 0 2 0 4 5 1 3 5 5 1 2 3 5 2 0 3 3 4 4 4 0 0 2 4 2 2 3 2 1 0 3 3 2 1 3 3 3 1 4 2 5 2 4 1 2 4 2 3 4 1 2 3 3 4 4 3 1 3 5 3 3 2 3 5 4 4 4 0 0 1 0 1 ...

output:

299993
299994
299998
299999
299998
299993
299994
299999
299998
299993
299998
299992
299999
299998
299999
299998
299998
299994
299999
299998
299993
299993
299998
299992
299993
299998
299998
299993
299998
299994
299999
299998
299998
299994
299998
299994
299998
299998
299999
299993
299999
299994
299998...

result:

ok ok

Test #16:

score: 0
Accepted
time: 49ms
memory: 4416kb

input:

300000 300000
3 4 4 1 1 5 1 4 4 1 2 5 4 1 1 1 4 3 5 2 4 5 4 4 4 2 4 2 5 5 5 4 5 4 1 5 2 2 2 5 5 2 1 3 1 2 4 4 1 5 1 3 1 5 3 3 3 4 5 2 5 5 2 4 1 3 2 2 2 5 4 1 3 4 5 4 1 2 3 2 1 1 3 2 4 4 1 4 1 4 3 2 1 3 2 5 1 4 5 4 3 2 2 4 3 1 3 2 4 3 4 3 5 4 3 5 5 2 1 1 3 4 2 2 1 2 1 5 5 2 3 5 2 5 3 5 4 4 5 5 5 2 3 ...

output:

299996
299996
299999
299993
-1
299996
299996
299993
299996
-1
299999
299996
299993
299999
299997
299999
299999
299996
299999
299993
-1
-1
299996
299993
299999
299993
299999
299999
299996
299997
299996
299993
299997
-1
-1
299999
299996
299997
299997
-1
299993
299996
299999
299999
-1
299997
299997
299...

result:

ok ok

Test #17:

score: 0
Accepted
time: 48ms
memory: 4424kb

input:

300000 300000
5 2 3 3 1 5 0 3 2 4 2 5 1 2 4 1 1 5 4 5 0 4 0 4 4 0 0 1 2 3 0 1 1 4 1 1 2 5 3 0 2 4 4 0 2 1 5 0 2 1 0 4 5 4 4 3 5 2 1 0 3 2 1 4 1 2 2 2 4 3 0 3 3 3 0 4 2 0 5 1 5 2 2 0 4 2 2 0 3 0 5 2 3 2 5 3 5 5 1 2 4 2 0 1 2 5 3 4 5 0 0 5 2 3 2 2 5 1 1 3 1 5 4 2 3 3 5 4 0 3 1 2 1 1 5 4 5 2 2 4 4 2 5 ...

output:

299991
-1
299991
299990
-1
-1
299990
-1
299991
299990
299990
-1
299990
299990
299993
299990
-1
299991
-1
299993
-1
-1
299993
299993
-1
299993
299991
-1
299991
-1
-1
299993
-1
299991
299990
-1
-1
299991
299990
299990
299991
299990
299990
-1
-1
299990
299993
299990
299993
299993
299993
299990
299990
2...

result:

ok ok

Test #18:

score: 0
Accepted
time: 44ms
memory: 4416kb

input:

300000 300000
4 1 3 3 1 4 2 1 3 1 1 4 4 5 2 2 2 1 5 2 2 4 3 4 4 4 2 2 1 3 2 5 5 2 3 4 4 4 5 5 3 4 5 2 1 4 4 1 4 5 5 5 3 4 4 4 4 3 4 2 2 4 5 3 5 3 1 5 2 4 1 1 4 4 3 1 5 1 4 2 5 3 3 1 1 3 1 5 5 2 1 1 4 3 4 2 4 5 1 4 4 5 5 5 1 2 3 1 3 4 1 5 5 3 4 4 2 2 5 2 4 1 3 3 3 3 1 3 1 5 4 4 2 2 5 3 2 2 3 1 3 4 1 ...

output:

299995
299993
-1
299993
-1
299993
299995
-1
299993
-1
299993
-1
-1
-1
299993
-1
-1
-1
299993
-1
-1
-1
299993
-1
-1
-1
299995
299993
-1
-1
299993
-1
-1
299993
299993
-1
-1
299993
-1
-1
299993
299993
-1
299993
299993
-1
-1
299995
-1
-1
-1
299995
299993
-1
-1
299993
299993
299995
-1
-1
-1
-1
299993
-1
...

result:

ok ok

Test #19:

score: 0
Accepted
time: 273ms
memory: 67732kb

input:

299999 300000
368364702 522726267 191777284 836785831 580519392 679702855 851224739 286998110 385871146 870875427 45817410 544738809 510710727 165619883 318858025 794120765 630021531 511379876 132579749 299399929 498617931 364772164 347885601 884294669 2578901 576388254 66773472 757552580 738656163 ...

output:

181694
120167
87803
178683
48011
259191
155869
16498
75950
26156
108241
221839
121724
120269
178466
141265
110181
41331
232061
246326
215883
140363
214598
146714
41699
234182
58151
115781
242277
264063
97016
153747
235501
114587
38679
123572
157589
6930
135025
203681
140306
105866
101549
257386
1175...

result:

ok ok

Test #20:

score: 0
Accepted
time: 277ms
memory: 66600kb

input:

300000 300000
329363808 410837414 386542070 316091908 224988184 590807425 401154024 565635770 86332895 871768724 648980535 429516720 974692004 393242573 258082599 541700334 365570636 140418397 22543471 474596985 928885580 593375594 883649657 723085701 136251090 79716489 444939923 965935970 173809628...

output:

125054
157109
188194
107195
107151
117146
240250
250024
207511
277492
209477
221395
263641
58946
227139
183504
159439
190405
35950
151055
8160
46668
59674
156673
167006
209803
167358
114769
203576
148534
89934
163686
140741
93968
67375
14004
115121
285950
285192
234676
253164
126157
209738
30097
163...

result:

ok ok

Extra Test:

score: 0
Extra Test Passed