#include #include #include using namespace std; int binarna_pretraga(int x, vector &a, int a_s, int n) { int levi; int desni; if(a_s == 0) { levi = 1; desni = n; } else { int l = 0; int d = a_s-1; int indeks_manjeg = -1; int s; while(l <= d) { s = l + (d-l)/2; // cout << l << " " << d << endl; if(a[s] < x) { indeks_manjeg = s; l = s + 1; } else { d = s - 1; } } if(indeks_manjeg < 0) levi = 1; else levi = a[indeks_manjeg] + 1; // zato sto ucenik koji prati ne saznaje za tajnu if(indeks_manjeg + 1 >= a_s) desni = n; else desni = a[indeks_manjeg+1] - 1; // zato sto ucenik koji prati ne saznaje za tajnu } return desni - levi + 1; } int main() { int n, m; // ukupan br ucenika i br ucenika koji prate nastavu cin >> n >> m; vector prate(m); // brojevi izmedju 1 i n for(int &x : prate) cin >> x; int r; // broj rasporeda cin >> r; vector milos(r); for(int &x : milos) cin >> x; sort(begin(prate),end(prate)); vector rez(r); for(int i = 0; i < r; i++) { rez[i] = binarna_pretraga(milos[i], prate, m, n); } for(int &x : rez) cout << x << endl; }