关注
import java.io.*;
import java.util.*;
class Edge{
int o, t, a, b;
public Edge(int o, int t, int a, int b){
this.o = o;
this.t = t;
this.a = a;
this.b = b;
}
}
public class Main{
static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
static BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
static final int N = 1010, mod = (int) 1e9 + 7;
static int[] p = new int[N];
static int n, m;
static int[][] c = new int[N][N];
static Edge[] edges;
public static void initC(){
for (int i = 0; i < N; i ++ )
for (int j = 0; j <= i; j ++ ){
if (j == 0) c[i][j] = 1;
else c[i][j] = (c[i - 1][j] + c[i - 1][j - 1]) % mod;
}
}
public static int find(int u){
if (p[u] != u){
p[u] = find(p[u]);
}
return p[u];
}
public static void union(int i, int j){
p[find(i)] = find(j);
}
public static void main(String[] args) throws IOException{
String[] ss = br.readLine().split(" ");
n = Integer.parseInt(ss[0]);
m = Integer.parseInt(ss[1]);
edges = new Edge[m];
initC();
for (int i = 0; i <= n; i ++ ) p[i] = i;
for (int i = 0 ; i < m; i ++ ){
String[] strs = br.readLine().split(" ");
int o = Integer.parseInt(strs[0]), t = Integer.parseInt(strs[1]),
a = Integer.parseInt(strs[2]), b = Integer.parseInt(strs[3]);
edges[i] = new Edge(o, t, a, b);
}
Arrays.sort(edges, (x, y) -> {
return c[y.a][y.b] - c[x.a][x.b];
});
int cnt = 0, ans = 0;
for (int i = 0; i < m; i ++ ){
Edge e = edges[i];
if (find(e.o) == find(e.t)) continue;
union(e.o, e.t);
ans = (ans + c[e.a][e.b]) % mod;
cnt ++ ;
}
if (cnt != (n - 1)) bw.write(-1 + "");
else bw.write(ans + "");
bw.flush();
}
}
查看原帖
点赞 评论
相关推荐
来看我简历:因为走了一批实习生了,现在在池子里捞人
点赞 评论 收藏
分享
07-08 10:56
安徽工程大学 运营 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 技术岗笔试题求解 #
77680次浏览 1005人参与
# 拼多多求职进展汇总 #
642399次浏览 4984人参与
# 工作一周年分享 #
30732次浏览 180人参与
# 如果公司给你放一天假,你会怎么度过? #
16301次浏览 122人参与
# 作业帮求职进展汇总 #
55787次浏览 370人参与
# 华子oc时间线 #
1236457次浏览 6473人参与
# OPPO求职进展汇总 #
662228次浏览 5034人参与
# 总结:哪家公司面试体验感最差 #
60508次浏览 273人参与
# 职场上哪些事情令人讨厌 #
18757次浏览 91人参与
# 三一重工求职进展汇总 #
14365次浏览 65人参与
# 去年你投递实习了吗? #
22019次浏览 329人参与
# 这些公司卡简历很严格 #
41315次浏览 204人参与
# 扒一扒那些奇葩实习经历 #
66337次浏览 913人参与
# 经纬恒润求职进展汇总 #
121698次浏览 1032人参与
# 提前批过来人的忠告 #
113910次浏览 1194人参与
# 说说你知道的学历厂 #
58833次浏览 352人参与
# 秋招最大的收获是什么? #
36913次浏览 311人参与
# 找工作时的取与舍 #
80047次浏览 566人参与
# 你认为小厂实习有用吗? #
29528次浏览 341人参与
# 哪一瞬间觉得自己长大了 #
14019次浏览 327人参与