#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define mod 100003 unsigned xor128_x = 123456789, xor128_y = 362436069, xor128_z = 521288629, xor128_w = 88675123; unsigned xor128() { unsigned t = xor128_x ^ (xor128_x << 11); xor128_x = xor128_y; xor128_y = xor128_z; xor128_z = xor128_w; return xor128_w = xor128_w ^ (xor128_w >> 19) ^ (t ^ (t >> 8)); } bool has[100003]; void generateA(int N, int A[]) { for(int i = 0; i < N; ++ i) { A[i] = xor128() % 100003; has[A[i]]=true; } } void exgcd(int p, int q, int& a, int& b ){ // p*a + q*b = 1 if( q

> N >> Q; int A[N]; generateA(N,A); for( int i = 0 ; i > q; long long y = 0; if( N< 500 ){ for( int i = 0 ; i = 0 ; i-- ){ if( has[(i*revq)%mod]){ y=i; break; } } } } printf("%d\n",(int)y); } return 0; }