#include <stdio.h>
typedef struct OpsegMogucegMerenja{
	int donja_granica, gornja_granica;
}OpsegMogucegMerenja;

int da_li_moze_da_izmeri(OpsegMogucegMerenja opseg, int tezina) /// primamo jednu vagu i tezinu koju testiramo da li moze da meri
{
	if(tezina >= opseg.donja_granica && tezina <= opseg.gornja_granica) return 1; /// ako moze da meri, vracamo 1 
	else return 0; // ako ne 0 
}

int da_li_moze_da_izmeri_po_pozicijama_niza(OpsegMogucegMerenja niz[], int pocetna_pozicija, int krajnja_pozicija, int tezina)
{
	// prolazak kroz prosledjene pozicije u nizu 
	int brojac = 0;
	for(int i = pocetna_pozicija;i<=krajnja_pozicija;i++)
	{
		if(da_li_moze_da_izmeri(niz[i], tezina) == 1) // provera da li moze trenutna vaga da meri
		{
			brojac++;
		}
	}	
	return brojac;

}



int main()
{
	int n,m;
	
	
	scanf("%d%d",&n,&m);
	
	OpsegMogucegMerenja niz[n]; 
	for(int i = 0;i<n;i++)
	{
		scanf("%d%d", &niz[i].donja_granica,&niz[i].gornja_granica);
		//int rez = da_li_moze_da_izmeri(niz[i],25); 
	
		
	}
	
	for(int i = 0;i<m;i++)
	{
		int pocetni_index,krajnji_index,tezina_koju_merim;
		scanf("%d%d%d",&pocetni_index,&krajnji_index,&tezina_koju_merim);
		int rez = da_li_moze_da_izmeri_po_pozicijama_niza(niz,pocetni_index,krajnji_index,tezina_koju_merim);
		printf("%d\n",rez);
		
	}
	
	
	
	
	
	
	
}