Вам задан первоначально пустой неориентированный граф из $$$n$$$ вершин, пронумерованных от $$$1$$$ по $$$n$$$ (т. е. $$$n$$$ вершин и $$$0$$$ ребер). Вы хотите добавить в него $$$m$$$ ребер так, чтобы граф не содержал петель и кратных ребер.
Если будет добавлено ребро, соединяющее две вершины $$$u$$$ и $$$v$$$, его вес должен быть равен наибольшему общему делителю $$$u$$$ и $$$v$$$, т. е. $$$\gcd(u, v)$$$.
Для того чтобы добавлять ребра в граф, вы можете повторять следующую операцию произвольное количество раз (возможно, ни разу):
Например, если вы можете добавить еще $$$5$$$ ребер веса $$$6$$$, вы можете их добавить в граф, и добавление будет стоить $$$6$$$ за всю группу из $$$5$$$ ребер. Однако если вы можете добавить только $$$4$$$ ребра веса $$$6$$$ в граф, вы не можете выполнить данную операцию для $$$k = 5$$$.
Для заданных $$$n$$$ и $$$m$$$, посчитайте минимальную суммарную стоимость создания графа из $$$n$$$ вершин и ровно $$$m$$$ ребер, используя описанную выше операцию. Если построить такой граф нельзя, выведите $$$-1$$$.
Заметим, что результирующий граф может состоять из нескольких компонент связности.
Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число $$$t$$$ ($$$1 \leq t \leq 10^4$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.
В первой и единственной строке заданы два целых числа $$$n$$$ и $$$m$$$ ($$$2 \leq n \leq 10^6$$$; $$$1 \leq m \leq \frac{n(n-1)}{2}$$$).
Гарантируется, что сумма $$$n$$$ по всем наборам входных данных не превосходит $$$10^6$$$.
Для каждого набора входных данных выведите наименьшую стоимость построения графа или $$$-1$$$, если такой граф построить нельзя.
44 16 109 410 11
2 -1 7 21
В первом наборе входных данных, мы можем добавить одно ребро между вершинами $$$2$$$ и $$$4$$$ с $$$\gcd = 2$$$. Это единственный способ добавить $$$1$$$ ребро, и он будет стоить $$$2$$$.
Во втором наборе, невозможно добавить $$$10$$$ ребер, а потому ответ $$$-1$$$.
В третьем наборе, мы можем добавить следующие ребра:
Название |
---|