주둔
면접 대비시간 제한1초메모리 제한1024 MB
각 지역에 병력을 배치하여 병력이 없는 이웃 지역 수의 합이 최대가 되는 값을 구합니다.
문제
운전병 해찬이의 활약 덕분에 A국은 B국과의 전쟁에서 승리할 수 있었다. 그러나 A국도 전쟁으로 큰 피해를 입었기 때문에, A국은 언제 침략해 올지 모르는 B국에 대비하려고 군대를 재정비하려고 한다.
A국에는 개의 지역이 있다. 전쟁으로 무너진 교통망을 복구하기 위해 각 지역은 다른 지역으로 향하는 양방향 도로를 하나씩 지었다. 번째 지역에서 지은 도로는 번째 지역으로 이동할 수 있는 양방향 도로이다.
B국의 침략에 대비해 각 지역에 부대를 주둔시키려고 한다. 다만 부대를 불필요하게 많이 주둔시키면 효용성이 감소하므로, 효용성이 최대가 되도록 부대를 각 지역에 효율적으로 배치하고자 한다. 이때 부대의 효용성은, 해당 부대에서 도로를 하나만 거쳐 이동할 수 있는 지역 중 부대를 주둔시키지 않은 서로 다른 지역의 개수로 정의한다.
각 부대의 효용성의 합이 최대가 되도록 부대를 배치했을 때의 효용성의 합을 구해 보자.
입력
첫 번째 줄에 지역의 개수 이 주어진다.
두 번째 줄에 각 지역에서 지은 양방향 도로와 연결된 지역을 의미하는 개의 정수 이 공백으로 구분되어 주어진다.
출력
모든 부대의 효용성의 합의 최댓값을 출력한다.