[BOJ] 1043번: 거짓말

https://www.acmicpc.net/problem/1043


맨 처음엔 문제를 제대로 이해하지 못해 굉장히 애를 먹었습니다. 결국 생각해보면 진실을 알고 있는 사람(A)과 같은 그룹에 속한 사람(B)들은 반드시 진실을 듣게 되고, B와 같은 그룹에 속한 사람들 또한 진실을 듣게 되고.. 이런식으로 이어지기 때문에 같은 그룹에 속한 사람들끼리 edge가 연결되어있다고 생각하고 flood-fill을 한 뒤, 진실을 알고 있는 사람과 아무런 접점이 없는 사람들로만 구성된 파티의 수를 세면 됩니다. 코드 작성하는 방법을 아예 싹 갈아엎어보았는데 아직은 손에 조금 덜 익었네요.


https://github.com/blisstoner/BOJ/blob/master/1043.cpp

'알고리즘 > BOJ' 카테고리의 다른 글

[BOJ] 3033번: DVAPUT  (0) 2018.05.08
[BOJ] 1715번: 카드 정렬하기  (0) 2018.05.03
[BOJ] 7662번: Dual Priority Queue  (0) 2018.05.03
[BOJ] 4781번: Candy Store  (0) 2018.05.01
[BOJ] 11478번: 서로 다른 부분 문자열의 개수  (0) 2018.04.30
[BOJ] 9248번: Suffix Array  (0) 2018.04.30
  Comments