#P9896. [ICPC 2018 Qingdao R] Sub-cycle Graph

    ID: 9321 Type: RemoteJudge 2000ms 512MiB Tried: 0 Accepted: 0 Difficulty: 6 Uploaded By: Tags>图论2018O2优化组合数学ICPC青岛

[ICPC 2018 Qingdao R] Sub-cycle Graph

题目描述

Given an undirected simple graph with nn (n3n \ge 3) vertices and mm edges where the vertices are numbered from 1 to nn, we call it a sub-cycle graph if it's possible to add a non-negative number of edges to it and turn the graph into exactly one simple cycle of nn vertices.

Given two integers nn and mm, your task is to calculate the number of different sub-cycle graphs with nn vertices and mm edges. As the answer may be quite large, please output the answer modulo 109+710^9+7.

Recall that

  • A simple graph is a graph with no self loops or multiple edges;
  • A simple cycle of nn (n3n \ge 3) vertices is a connected undirected simple graph with nn vertices and nn edges, where the degree of each vertex equals to 2;
  • Two undirected simple graphs with nn vertices and mm edges are different, if they have different sets of edges;
  • Let u<vu < v, we denote (u,v)(u, v) as an undirected edge connecting vertices uu and vv. Two undirected edges (u1,v1)(u_1, v_1) and (u2,v2)(u_2, v_2) are different, if u1u2u_1 \ne u_2 or v1v2v_1 \ne v_2.

输入格式

There are multiple test cases. The first line of the input contains an integer TT (about 2×1042 \times 10^4), indicating the number of test cases. For each test case:

The first and only line contains two integers nn and mm (3n1053 \le n \le 10^5, 0mn(n1)20 \le m \le \frac{n(n-1)}{2}), indicating the number of vertices and the number of edges in the graph.

It's guaranteed that the sum of nn in all test cases will not exceed 3×1073 \times 10^7.

输出格式

For each test case output one line containing one integer, indicating the number of different sub-cycle graphs with nn vertices and mm edges modulo 109+710^9+7.

3
4 2
4 3
5 3
15
12
90

提示

The 12 sub-cycle graphs of the second sample test case are illustrated below.