Задача. "Сколько ребер"
Неориентированный граф (возможно, с кратными ребрами) задан списком ребер. В памяти граф нужно хранить именно в виде списка ребер. Напишите функцию, которая по номерам двух вершин будет возвращать в качестве результата количество ребер между этими двумя вершинами.
Используя эту функцию, напишите программу, которой дается граф, и некоторое количество запросов о числе ребер между вершинами, программа печатает ответы на запросы.
Входные данные. Вводятся числа N и M (2≤N≤100, 0≤M≤10000) - количество вершин и ребер графа. Далее идет M пар чисел, задающих ребра. Далее идет количество запросов K (1≤K≤100). Далее идет K пар чисел, задающих запросы (номера вершин графа, количество ребер между которыми нас интересует).
Выходные данные. Для каждого запроса выведите количество ребер в графе между указанными вершинами.
Примечание. Заметьте, что если в графе два ребра: (1,2) и (2,1), то ответом на запрос о числе ребер между вершинами 1 и 2 будет число 2.
Пример
Пример ввода | Пример вывода |
4 3 1 2 2 1 1 4 3 1 2 4 1 2 3 | 2 1 0 |