关注
/* 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); } } }
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
01-07 17:13
广州大学 前端工程师 点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 在大厂上班是一种什么样的体验 #
11653次浏览 150人参与
# 你的mentor是什么样的人? #
51021次浏览 719人参与
# 程序员找工作至少要刷多少题? #
20272次浏览 258人参与
# 我和mentor的爱恨情仇 #
106156次浏览 945人参与
# 论秋招对个人心气的改变 #
12479次浏览 169人参与
# 校招第一份工作你干了多久? #
136590次浏览 597人参与
# 机械人避雷的岗位/公司 #
43905次浏览 304人参与
# 为了减少AI幻觉,你注入过哪些设定? #
5496次浏览 166人参与
# 设计人如何选offer #
189628次浏览 868人参与
# 你的秋招进行到哪一步了 #
2530383次浏览 23253人参与
# 机械人还在等华为开奖吗? #
312067次浏览 1582人参与
# 牛客AI体验站 #
7391次浏览 200人参与
# 秋招投递记录 #
380829次浏览 3203人参与
# 重来一次,我还会选择这个专业吗 #
411166次浏览 3898人参与
# 12306一秒售罄,你抢到回家的票了吗? #
2186次浏览 51人参与
# 我现在比当时_,你想录用我吗 #
9163次浏览 117人参与
# 互联网公司评价 #
485812次浏览 4111人参与
# 职场上哪些行为很加分? #
322381次浏览 3598人参与
# 一张图晒一下你的AI员工 #
5513次浏览 123人参与
# AI Coding的使用心得 #
5024次浏览 105人参与
