#include #include #include #define maxim 50001 using namespace std; int32_t nrq, frecv[maxim+1], sol[maxim], maxi, sqrtm; int32_t rr[maxim], l, r, l_c, r_c, rez; struct queryy { int32_t a, b, sol, in; }q[maxim], aux; int16_t numar(int32_t nr, int16_t cif) { int32_t aux=nr; int16_t rez=0; while(aux!=0) { if(aux%10==cif) rez++; aux/=10; } return rez; } void frecventa() { int32_t i, nr4, nr7; for(i=1; i>nrq; for(i=1; i<=nrq; i++) { cin>>q[i].a>>q[i].b; if(maxi< q[i].b) maxi= q[i].b; q[i].in=i; } sqrtm= sqrt(maxi); for(gap=nrq/2; gap>=1; gap/=2) for(i=1+gap; i<=nrq; i++) { aux=q[i]; for(j=i-gap; (j>=1)&&((q[j].a/ sqrtm> aux.a/ sqrtm)||((q[j].a/ sqrtm== aux.a/ sqrtm)&&(q[j].b> aux.b))); j-=gap) q[j+gap]=q[j]; q[j+gap]=aux; } } void afisare() { int32_t i; for(i=1; i<=nrq; i++) sol[q[i].in]=q[i].sol; for(i=1; i<=nrq; i++) cout<r_c; i--) delete_dr(i); else for(i=r+1; i<=r_c; i++) add_dr(i); if(l_c< l) for(i=l_c; i