关注
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();
}
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
- 1... 进大厂是因为老家找不到工作1.1W
- 2... 我父母让我忍受所有工作上的欺辱1.0W
- 3... 【Offer帮选】专家大佬在线接单!发帖即享免费1V1抉择指导9053
- 4... 双9Java0基础➡秋招4×大厂offer,这一年我到底干了什么?7949
- 5... wxg和字节flow咋选6578
- 6... 要不是有我,你们早就在一起了5898
- 7... 滴滴日常一面速通(附面筋,已OC)4598
- 8... 月薪多少才能过上"体面生活"3516
- 9... 学院本什么时候能上岸啊,唉3155
- 10... 快手员工自费给+2庆生?太带派了烙铁2631
正在热议
更多
# 职场中那些令人叹为观止的八卦 #
13405次浏览 158人参与
# 你找工作想离家近 or 离家远? #
9496次浏览 166人参与
# 腾讯音乐秋招 #
423928次浏览 4741人参与
# 我的职场社死时刻 #
10743次浏览 108人参与
# 如何拒绝/反向PUA #
83519次浏览 372人参与
# 你父母给过你哪些不靠谱的职场建议? #
9072次浏览 139人参与
# 小红书开奖了 #
21221次浏览 117人参与
# 秋招吐槽大会 #
51027次浏览 450人参与
# 哪些公司开始补录了 #
10799次浏览 123人参与
# 那些年,我收到的‘奇葩’回复 #
6159次浏览 60人参与
# 职场中对你有帮助的书 #
23859次浏览 213人参与
# 你秋招最后悔的选择 #
9148次浏览 70人参与
# 租房前辈的忠告 #
275908次浏览 7204人参与
# XX请雇我工作 #
7773次浏览 76人参与
# 秋招你经历过哪些无语的事 #
5925次浏览 62人参与
# 月薪多少能在一线城市生存 #
94070次浏览 677人参与
# 假如你的老板掉河里,你的工作能为他做什么 #
40312次浏览 402人参与
# 通信硬件知识分享 #
39788次浏览 527人参与
# 你觉得机械有必要实习吗 #
67213次浏览 481人参与
# 交通银行工作体验 #
21396次浏览 69人参与
# 中科曙光工作体验 #
5743次浏览 23人参与
# 秋招疯了,看什么都像offer #
9404次浏览 99人参与
