Submission #1534536


Source Code Expand

import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Scanner;
import java.util.Set;

// 別にこのクラスいらなかった感
class Node {
	int nodeNo;
	List<Integer> friends;

	public Node(int nodeNo, List<Integer> friends) {
		super();
		this.nodeNo = nodeNo;
		this.friends = friends;
	}

}

public class Main {

	public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);

		int N = sc.nextInt();
		int M  =sc.nextInt();

		Node[] userList = new Node[N+1];

		for(int i=0; i<M; i++) {

			int a = sc.nextInt();
			int b = sc.nextInt();

			if(userList[a] == null) {
				userList[a] = new Node(a, new ArrayList<>());
			}
			userList[a].friends.add(b);

			if(userList[b] == null) {
				userList[b] = new Node(b, new ArrayList<>());
			}
			userList[b].friends.add(a);
		}

		sc.close();

		for(int userNum=1; userNum<=N; userNum++) {

			// 友達がいないユーザは友達の友達も0人
			if(userList[userNum] == null) {
				System.out.println(0);
				continue;
			}

			Set<Integer> friendsAndItself = new HashSet<>();

			friendsAndItself.addAll(userList[userNum].friends);
			friendsAndItself.add(userNum);

			Set<Integer> friendsFriends = new HashSet<>();
			for(Integer friendsNum : userList[userNum].friends) {
				friendsFriends.addAll(userList[friendsNum].friends);
			}

			friendsFriends.removeAll(friendsAndItself);
			System.out.println(friendsFriends.size());

		}

	}

}

Submission Info

Submission Time
Task C - 友達の友達
User nasmarl
Language Java8 (OpenJDK 1.8.0)
Score 100
Code Size 1538 Byte
Status AC
Exec Time 106 ms
Memory 23636 KB

Judge Result

Set Name All
Score / Max Score 100 / 100
Status
AC × 32
Set Name Test Cases
All 00_sample_00.txt, 00_sample_01.txt, 10_rand_00.txt, 10_rand_01.txt, 10_rand_02.txt, 10_rand_03.txt, 10_rand_04.txt, 10_rand_05.txt, 10_rand_06.txt, 10_rand_07.txt, 10_rand_08.txt, 10_rand_09.txt, 10_rand_10.txt, 10_rand_11.txt, 10_rand_12.txt, 10_rand_13.txt, 10_rand_14.txt, 10_rand_15.txt, 10_rand_16.txt, 10_rand_17.txt, 10_rand_18.txt, 10_rand_19.txt, 10_rand_20.txt, 10_rand_21.txt, 10_rand_22.txt, 10_rand_23.txt, 10_rand_24.txt, 10_rand_25.txt, 10_rand_26.txt, 10_rand_27.txt, 10_rand_28.txt, 10_rand_29.txt
Case Name Status Exec Time Memory
00_sample_00.txt AC 92 ms 21076 KB
00_sample_01.txt AC 92 ms 18516 KB
10_rand_00.txt AC 92 ms 20052 KB
10_rand_01.txt AC 91 ms 20692 KB
10_rand_02.txt AC 106 ms 19668 KB
10_rand_03.txt AC 92 ms 18900 KB
10_rand_04.txt AC 93 ms 21716 KB
10_rand_05.txt AC 94 ms 23380 KB
10_rand_06.txt AC 91 ms 22996 KB
10_rand_07.txt AC 92 ms 21716 KB
10_rand_08.txt AC 102 ms 19796 KB
10_rand_09.txt AC 97 ms 20052 KB
10_rand_10.txt AC 95 ms 20560 KB
10_rand_11.txt AC 90 ms 20688 KB
10_rand_12.txt AC 92 ms 21844 KB
10_rand_13.txt AC 93 ms 21204 KB
10_rand_14.txt AC 92 ms 21844 KB
10_rand_15.txt AC 103 ms 19796 KB
10_rand_16.txt AC 96 ms 21844 KB
10_rand_17.txt AC 93 ms 21716 KB
10_rand_18.txt AC 93 ms 21972 KB
10_rand_19.txt AC 93 ms 18900 KB
10_rand_20.txt AC 91 ms 19284 KB
10_rand_21.txt AC 93 ms 21588 KB
10_rand_22.txt AC 92 ms 21844 KB
10_rand_23.txt AC 94 ms 18640 KB
10_rand_24.txt AC 90 ms 23636 KB
10_rand_25.txt AC 93 ms 18900 KB
10_rand_26.txt AC 91 ms 19284 KB
10_rand_27.txt AC 102 ms 19412 KB
10_rand_28.txt AC 97 ms 21716 KB
10_rand_29.txt AC 102 ms 20560 KB