General
 
 
# Author Problem Lang Verdict Time Memory Sent Judged  
115860807 Practice:
puranjaymishra
1468D - 22 GNU C++11 Wrong answer on test 2 30 ms 36244 KB 2021-05-10 15:05:29 2021-05-10 15:05:29
→ Source
#include<iostream>
#include<vector>
#include<string> 
#include<algorithm>
#include<set>
#include<map>
#include<algorithm>
#include<cmath>
#include<limits>
#define all(x) x.begin(),x.end()
#define pb push_back
#define mp make_pair
using namespace std;
using ll = long long;
using ld = long double;
long long int INF=numeric_limits<int>::max();
vector<ll> prime;
set<ll> vec;
int f[2000000];
int mod = 1e9 + 7;
 //FUCTION FOR CALCULATION OF POWER (a^b)
int fast_pow(int a, int p) {
  int res = 1;
  while (p) {
    if (p % 2 == 0) {
      a = a * 1ll * a % mod;
      p /= 2;
    } else {
      res = res * 1ll * a % mod;
      p--;
    }
  }
  return res;
}
 //CALCUALTION OF FACTORIAL
int fact(int n) {
  int res = 1;
  for (int i = 1; i <= n; i++) {
    res = res * 1ll * i % mod;
  }
  return res;
}
 // FUNCTION FOR CALCULATING COMBINATION
int C(int n, int k) {
  return fact(n) * 1ll * fast_pow(fact(k), mod - 2) % mod * 1ll * fast_pow(fact(n - k), mod - 2) % mod;
}
void cal()
{
    int i,j;
    for(i=2;i<=1414;i++)
    {
        for(j=i;j<=1414;j++)
        {
            f[j*i]=1;
        }
    }
    for(i=2;i<1414*1414;i++)
    {
        if(f[i]==0)
        prime.pb(i);
    }
}
bool is_prime(long long int n)
{
    int i;
    for(i=0;i<=lower_bound(prime.begin(),prime.end(),sqrt(n))-prime.begin();i++)
    {
        if(n%prime[i]==0)
        return true;
    }
    return false;
}
// BINARY SEARCH
int bs_val(vector<int> &a,vector<int> &b,int l,int r)
{
    if(l>=r)
        {
            if(b[l]>=a[l+1])
                return l;
            else return l+1;
        }
    else
    {
        if(b[(l+r)/2]>=a[(l+r)/2+1])
            r=(l+r)/2-1;
        else l=(l+r)/2+1;
        return bs_val(a,b,l,r);
    }
}
// STANDARD FUNCTION FOR GCD
 int gcd(int a, int b)
{
    if (b == 0)
        return a;
    return gcd(b, a % b);
     
}
// DEPTH - FIRST - SEARCH
void dfs(vector<vector<int>> &a,vector<int> &vis, int &cnt,int i)
{
    vis[i]=1;
    cnt++;
    for(int j=0;j<a[i].size();j++)
    {
        if(!vis[a[i][j]])
        {
            dfs(a,vis,cnt,a[i][j]);
        }
    }
}
int req_factor(long long int n)
{
    int i,j;
    long long int ans=1;
    int id=lower_bound(all(prime),sqrt(n))-prime.begin();
     for(i=0;i<=id;i++)
     {
        if(n%prime[i]==0)
         {
            int temp_cnt=0;
             while(n%prime[i]==0)
             {
                 temp_cnt++;
                 n=n/prime[i];
             }
             if(temp_cnt%2!=0)
             ans=ans*prime[i];
        }
     }
     return ans;
}
 
int main() 
{
    cal();
    int t;
    cin>>t;
    for(int uu=0;uu<t;uu++)
    {
        int i,n,m,a,b;
        cin>>n>>m>>a>>b;
        vector<long long int> v,c;
        for(i=0;i<m;i++)
        {
            long long int temp;
            cin>>temp;
            v.pb(temp);
        }
        sort(v.rbegin(),v.rend());
        int tem=v.size();
        for(i=tem-1;i>=tem-min(min(abs(b-a)-1,m),tem);i--)
        {
            c.pb(v[i]);
        }
        sort(c.rbegin(),c.rend());
        for(i=0;i<c.size();i++)
        {
            c[i]+=(i+1);
        }
        sort(c.begin(),c.end());
        int evade_time=0;
        if(b>a)
        {
            evade_time+=(a-1);
            evade_time+=((b-a));
        }
        else
        {
            evade_time+=(n-a);
            evade_time+=((a-b));
        }
        if(!binary_search(all(c),evade_time))
        {
            cout<<lower_bound(all(c),evade_time)-c.begin()<<"\n";
        }
        else
        {
            cout<<lower_bound(all(c),evade_time)-c.begin()+1<<"\n";
        }
    }
    return 0;
}
?
Time: ? ms, memory: ? KB
Verdict: ?
Input
?
Participant's output
?
Jury's answer
?
Checker comment
?
Diagnostics
?
Click to see test details