Source Code
#include <bits/stdc++.h>

using namespace std;

#define output(v) for(auto&it:v){cout<<it<<" ";}cout<<"\n"
#define input(v) for(auto&it:v){cin>>it;}

void FastCode()
{
    std::ios_base::sync_with_stdio(0);
    cin.tie(NULL);
    cout.tie(NULL);
}

const int N=1e6+5;
bool prime[N];
vector<long long>primes;
void  sieve()
{
    for (int i = 0; i < N; i++)
        prime[i] = 1;
    prime[0] = prime[1] = 0;
    for (int i = 4; i < N; i += 2)
    {
        prime[i] = 0;
    }
    for (int i = 3; i * i < N; i += 2)
    {
        if (prime[i])
        {
            for (int j = i * i; j < N; j += i + i)
            {
                prime[j] = 0;
            }
        }
    }
    for(int i=2; i<N; i++)
        if(prime[i])primes.push_back(i);
}

void solve(){
    long long n , k;
    cin >> n >> k;
    if(n == 1){
        if(k == 2) cout<<"1\n";
        else cout<<"0\n";
        return;
    }
    if(k <= n+1){
        cout<<(k-1)/2<<"\n";
    }else{
        long long s = k - n;
        if(s < n){
            cout<<(k-2*s+1)/2<<"\n";
        }else cout<<"0\n";
    }
}
int main()
{
    FastCode();
    int t;
    cin >> t;
    while(t--) solve();
    return 0;
}
Copy
Ramadan Candies hitmanx97
GNU G++17
4 ms
312 KB
Wrong Answer