1. Home
  2. 코딩테스트
  3. 홍팀 청팀
문제 설명

홍팀 청팀

학교에서 운동회를 준비하며 학생들을 홍팀과 청팀으로 나누려고 합니다. 학생들 간의 친구 관계를 나타내는 2차원 배열 friends 가 주어집니다.

  • friends[i]는 i번째 학생과 친구인 학생들의 번호를 나타냅니다.

  • 친구 관계는 대칭적이며, 즉 학생 A가 학생 B의 친구라면, B도 A의 친구입니다.

  • 일부 학생들은 친구가 없을 수도 있습니다.

당신의 목표는 학생들을 두 팀으로 나누는 것입니다.

단, 같은 팀에 속한 학생들끼리는 친구 관계가 없어야 합니다.

주어진 친구 관계를 바탕으로, 학생들을 두 팀으로 나눌 수 있다면 True, 그렇지 않다면 False를 반환하는 solution 함수를 작성하세요.

입출력 예시

예시 1:

  • 입력: friends = [[1], [2], [0]]

  • 출력: false

예시 2:

  • 입력: friends = [[1, 2], [0, 3], [0], [1]]

  • 출력: true

제한 사항

  • friends.length == n

  • 1 ≤ n ≤ 100

  • 0 ≤ friends[u].length < n

  • 0 ≤ friends[u][v] < n

  • friends[u][v]는 양의 정수입니다.

  • friends[u]는 u를 원소로 갖지 않습니다.

  • friends[u]에 속한 모든 값은 중복이 없습니다.

  • 만약 friends[u] 에 v가 있다면, friends[v]에는 u가 속해있습니다.

friends

[[1],[2],[0]]

문제 설명

홍팀 청팀

학교에서 운동회를 준비하며 학생들을 홍팀과 청팀으로 나누려고 합니다. 학생들 간의 친구 관계를 나타내는 2차원 배열 friends 가 주어집니다.

  • friends[i]는 i번째 학생과 친구인 학생들의 번호를 나타냅니다.

  • 친구 관계는 대칭적이며, 즉 학생 A가 학생 B의 친구라면, B도 A의 친구입니다.

  • 일부 학생들은 친구가 없을 수도 있습니다.

당신의 목표는 학생들을 두 팀으로 나누는 것입니다.

단, 같은 팀에 속한 학생들끼리는 친구 관계가 없어야 합니다.

주어진 친구 관계를 바탕으로, 학생들을 두 팀으로 나눌 수 있다면 True, 그렇지 않다면 False를 반환하는 solution 함수를 작성하세요.

입출력 예시

예시 1:

  • 입력: friends = [[1], [2], [0]]

  • 출력: false

예시 2:

  • 입력: friends = [[1, 2], [0, 3], [0], [1]]

  • 출력: true

제한 사항

  • friends.length == n

  • 1 ≤ n ≤ 100

  • 0 ≤ friends[u].length < n

  • 0 ≤ friends[u][v] < n

  • friends[u][v]는 양의 정수입니다.

  • friends[u]는 u를 원소로 갖지 않습니다.

  • friends[u]에 속한 모든 값은 중복이 없습니다.

  • 만약 friends[u] 에 v가 있다면, friends[v]에는 u가 속해있습니다.

friends

[[1],[2],[0]]