CF763E.Timofey and our friends animals

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

After his birthday party, Timofey went to his favorite tree alley in a park. He wants to feed there his favorite birds — crows.

It's widely known that each tree is occupied by a single crow family. The trees in the alley form a row and are numbered from 11 to nn . Some families are friends to each other. For some reasons, two families can be friends only if they live not too far from each other, more precisely, there is no more than k1k-1 trees between any pair of friend families. Formally, the family on the uu -th tree and the family on the vv -th tree can be friends only if uv<=k|u-v|<=k holds.

One of the friendship features is that if some family learns that Timofey is feeding crows somewhere, it notifies about this all friend families. Thus, after Timofey starts to feed crows under some tree, all the families that are friends to the family living on this tree, as well as their friends and so on, fly to the feeding place. Of course, the family living on the tree also comes to the feeding place.

Today Timofey came to the alley and noticed that all the families that live on trees with numbers strictly less than ll or strictly greater than rr have flown away. Thus, it is not possible to pass the information about feeding through them. Moreover, there is no need to feed them. Help Timofey to learn what is the minimum number of trees under which he has to feed crows so that all the families that have remained will get the information about feeding. You are given several situations, described by integers ll and rr , you need to calculate the answer for all of them.

输入格式

The first line contains integers nn and kk ( 1<=n<=1051<=n<=10^{5} , 1<=k<=51<=k<=5 ), where nn is the number of trees, and kk is the maximum possible distance between friend families.

The next line contains single integer mm ( 0<=m<=nk0<=m<=n·k ) — the number of pair of friend families.

Each of the next mm lines contains two integers uu and vv ( 1<=u,v<=1051<=u,v<=10^{5} ), that means that the families on trees uu and vv are friends. It is guaranteed that uvu≠v and uv<=k|u-v|<=k . All the given pairs are distinct.

The next line contains single integer qq ( 1<=q<=1051<=q<=10^{5} ) — the number of situations you need to calculate the answer in.

Each of the next qq lines contains two integers ll and rr ( 1<=l<=r<=1051<=l<=r<=10^{5} ), that means that in this situation families that have flown away lived on such trees xx , so that either x<l or x>r .

输出格式

Print qq lines. Line ii should contain single integer — the answer in the ii -th situation.

输入输出样例

  • 输入#1

    5 3
    3
    1 3
    2 3
    4 5
    5
    1 1
    1 2
    2 3
    1 3
    1 5
    

    输出#1

    1
    2
    1
    1
    2
    

说明/提示

In the first example the following family pairs are friends: (1,3)(1,3) , (2,3)(2,3) and (4,5)(4,5) .

  • In the first situation only the first family has remained, so the answer is 11 .
  • In the second situation the first two families have remained, and they aren't friends, so the answer is 22 .
  • In the third situation the families 22 and 33 are friends, so it is enough to feed any of them, the answer is 11 .
  • In the fourth situation we can feed the first family, then the third family will get the information from the first family, and the second family will get the information from the third. The answer is 11 .
  • In the fifth situation we can feed the first and the fifth families, so the answer is 22 .
首页