203202026-01-06 13:49:39BaKamillaHáromszögekcpp17Hibás válasz 13/40193ms1292 KiB
// Haromszogek.cpp : This file contains the 'main' function. Program execution begins and ends there.
//

#include <iostream>
#include <vector>
#include <algorithm>

std::vector<int> v;

int keres(int elso, int utolso, int mit)
{
    if (elso >= utolso) {
        return elso;
    }
    else {
        int k = (elso + utolso) / 2;
        if (v[k] == mit) return k;
        else if (mit < v[k]) return keres(elso, k - 1, mit);
        else return keres(k + 1, utolso, mit);
    }
}
int main()
{
    int N;
    int Q;
    std::cin >> N >> Q;
    for (int i = 1; i <= N; i++) {
        int a;
        std::cin >> a;
        v.push_back(a);
    }
    sort(v.begin(), v.end());
   /*for (auto i : v) std::cout << i << " ";
    std::cout << std::endl << "Mit keresel?\n";
    int m;
    std::cin >> m;
    std::cout << keres(0, v.size(),m);*/
   for (int i = 1; i <= Q; i++) {
        int a, b; 
        std::cin >> a >> b;
        if (a > b) std::swap(a, b);
        int k = keres(0, v.size(), a + b);
        int p = keres(0, v.size(), b - a);
        if (k >= v.size()) k--;
        else
            if( v[k] >= a + b) k--;
        if (p < 0) p++;
        else if(v[p] <= b - a) p++;
        //std::cout << k << " " << p << std::endl;
        if (k < p) std::cout << 0;
        else
        std::cout << k - p + 1 << std::endl;
    }


}

RészfeladatÖsszpontTesztVerdiktIdőMemória
base13/40
1Elfogadva0/01ms508 KiB
2Elfogadva0/01ms316 KiB
3Elfogadva0/016ms500 KiB
4Hibás válasz0/44ms316 KiB
5Hibás válasz0/23ms316 KiB
6Hibás válasz0/1185ms1116 KiB
7Elfogadva1/1181ms1292 KiB
8Elfogadva2/2180ms1188 KiB
9Elfogadva2/2175ms1068 KiB
10Elfogadva1/1167ms1016 KiB
11Elfogadva1/1166ms944 KiB
12Elfogadva2/2167ms952 KiB
13Elfogadva2/2165ms1196 KiB
14Hibás válasz0/1190ms1196 KiB
15Elfogadva1/1186ms1144 KiB
16Elfogadva1/1180ms944 KiB
17Hibás válasz0/1182ms1048 KiB
18Hibás válasz0/1168ms956 KiB
19Hibás válasz0/2170ms940 KiB
20Hibás válasz0/2170ms1016 KiB
21Hibás válasz0/3174ms1032 KiB
22Hibás válasz0/5193ms1196 KiB
23Hibás válasz0/5193ms1188 KiB