Notice
Recent Posts
Recent Comments
Link
목록역량테스트준비 (1)
할껀하고놀자
[SW역량테스트준비] 연구소 3
연구소 3 연구소에 바이러스를 퍼뜨리는데 걸리는 최소시간을 구하는 문제이다. 바이러스를 놓을 수 있는 모든 경우의 수를 만든 후, 각 케이스에 대해 bfs로 바이러스를 퍼뜨려서 최소값을 구하면 된다. 연구소의 사이즈는 n*n이고, 바이러스의 갯수는 m개이다. 바이러스를 놓을 수 있는 칸의 좌표들을 리스트화하여 리스트 v에 저장하자. 빈칸(0)의 갯수를 모두 세고, 이를 k라고 하자. 이 값은 바이러스를 퍼트려야하는 총 개수가 된다. 조합을 이용해 m개의 바이러스를 후보칸에 둔다. 이때 리스트 v를 활용하여, 바이러스를 놓은 칸의 좌표를 큐에 넣는다. bfs를 통해 바이러스를 퍼트린다. 감염시킬 때마다, 감염시킨 칸의 개수를 세고, 감염시간을 계속 업데이트 해준다. 감염은 (0)만 가능하지만, (2) 가 ..
[IT]
2019. 10. 13. 22:59