关注
/* JD 多部图 AC 100 找一个节点,和它不相连的节点都划到一个集合里面,然后验证一下这个集合和剩下的节点之间是否满足要求,如果满足,在考虑剩下的节点,先选一个出来,不相连的划分到一个集合中...循环操作直到所有的节点都划分完就可以了 */ import java.util.*; public class JD1 { public static class Node{ public int value; public ArrayList<Node> nexts; public boolean pass; public Node(int value){ this.value = value; nexts = new ArrayList<>(); pass = false; } } public static void process(Scanner in){ int n = in.nextInt(); int m = in.nextInt(); HashMap<Integer, Node> map = new HashMap<>(); for(int i = 0; i < n; i++){ map.put(i+1, new Node(i+1)); } for(int i = 0; i < m; i++){ int f = in.nextInt(); int s = in.nextInt(); Node nf = map.get(f); Node ns = map.get(s); nf.nexts.add(ns); ns.nexts.add(nf); } Node n1 = map.get(1); map.remove(1); List<Node> xl = n1.nexts; List<Node> nxl = new ArrayList<>(); for (Map.Entry<Integer, Node> entry : map.entrySet()) { if(!xl.contains(entry.getValue())){ nxl.add(entry.getValue()); } } boolean pan = false; for(Node node : nxl){ for(Node node1: xl){ if(!node.nexts.contains(node1)){ pan = true; break; } } } if(pan){ System.out.println("No"); }else{ System.out.println("Yes"); } } public static void main(String[] args){ Scanner in = new Scanner(System.in); int n = in.nextInt(); for(int i = 0; i < n; i++){ process(in); } } }
查看原帖
点赞 2
相关推荐
点赞 评论 收藏
分享
昨天 17:20
武汉大学 golang 点赞 评论 收藏
分享
05-03 12:45
西南大学 Java 点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 考研对你找工作产生了哪些影响? #
11515次浏览 119人参与
# 找实习你看重大厂光环还是业务方向 #
5595次浏览 49人参与
# 聊聊这家公司值得去吗 #
250601次浏览 2312人参与
# 摸鱼被leader发现了怎么办 #
57606次浏览 342人参与
# 职场捅娄子大赛 #
365624次浏览 3750人参与
# 大家实习每天都在干啥 #
81027次浏览 499人参与
# 实习想申请秋招offer,能不能argue薪资 #
139715次浏览 889人参与
# 我是XXX,请攻击我最薄弱的地方 #
28238次浏览 279人参与
# 打杂的实习你会去吗? #
110829次浏览 966人参与
# kpi面有什么特征 #
39133次浏览 321人参与
# 机械人晒出你的简历 #
76105次浏览 635人参与
# 我发现一个规律 #
7987次浏览 70人参与
# 电信求职进展汇总 #
9266次浏览 79人参与
# 你有哪些缓解焦虑的方法? #
6777次浏览 231人参与
# 海康威视求职进展 #
79101次浏览 457人参与
# 没有合适的工作,你会先找个干着,还是考公考研 #
112026次浏览 1114人参与
# 为了找工作你投递了多少公司? #
16303次浏览 240人参与
# 校招第一份工作你干了多久? #
75348次浏览 367人参与
# 机械只有读研才有出路吗? #
20177次浏览 230人参与
# 硬件开发岗知多少 #
11448次浏览 116人参与