关注
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();
}
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 饿了么求职进展汇总 #
21145次浏览 242人参与
# 面试常问题系列 #
21212次浏览 642人参与
# 神州信息求职汇总 #
41997次浏览 291人参与
# 牛友故事会 #
36097次浏览 722人参与
# 2025退税开始啦 #
33019次浏览 419人参与
# 蚂蚁求职进展汇总 #
26094次浏览 291人参与
# 职场中你干过哪些“蠢”事 #
92207次浏览 499人参与
# 你的秋招第一场笔试是哪家 #
62913次浏览 785人参与
# 面试时被问的最奇葩的问题 #
15554次浏览 91人参与
# 假如你的老板掉河里,你的工作能为他做什么 #
22312次浏览 349人参与
# 大学生该如何认清当下的就业环境? #
3270次浏览 18人参与
# HR问:你期望的薪资是多少?如何回答 #
8950次浏览 267人参与
# 阿里求职进展汇总 #
116922次浏览 1095人参与
# 面试官是我前女友 #
84901次浏览 632人参与
# 米哈游求职进展汇总 #
240698次浏览 1775人参与
# 汇川技术求职进展汇总 #
107808次浏览 754人参与
# 我在牛爱网找对象 #
156812次浏览 1198人参与
# 机械人,秋招第一次笔试的企业是哪家? #
26006次浏览 256人参与
# 美团求职进展汇总 #
1529354次浏览 13726人参与
# 面试中,你被问过哪些奇葩问题? #
56435次浏览 702人参与
# 通信/硬件求职避坑tips #
40258次浏览 341人参与