페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#3064

귓속말 1s 64MB

문제

N명이 한 팀이 되어 게임을 하고 있다. 비록 같은 팀이긴 하지만 팀원 중에는 평소 사이가 나빠서 게임 중이라도 절대로 말을 하지 않는 친구도 있다.

팀의 리더는 모든 친구들에게 동물 이름을 한 개씩 귓속말로 알려 줄 것이다. 그러면 그 친구는 다른 모든 친구들에게 리더로부터 들은 동물의 이름을 다시 귓속말로 알려 줄 수 있다. 리더가 아닌 다른 친구로부터 들은 동물의 이름을 절대 말해서는 안 된다. 물론 사이가 나쁜 친구에게는 말을 하지 않을 것이 분명하다. 

 

N명이 모두 들은 동물의 수가 이 팀의 점수가 된다. 

점수가 최대가 되도록 만들기 위해서 리더는 사이가 나쁜 친구들의 정보를 이용해서 각 친구들에게 어떻게 동물 이름을 말해야 할지 잘 생각해야 한다. 

팀원의 수와 사이가 나쁜 친구의 정보가 주어질 때 이 팀이 얻을 수 있는 최대 점수를 구하는 프로그램을 작성하라. 

 


입력

첫 번째 줄에 팀의 리더를 제외한 팀원의 수 N이 입력된다. (1 <= N <= 100)

두 번째 줄에는 사이가 나쁜 친구의 쌍 M이 입력된다. (0 <= M <= N * (N - 1) / 2) 

세 번째 줄부터 M줄에 걸쳐 사이가 나쁜 친구의 번호 2개가 입력된다.


출력

팀이 얻을 수 있는 최대 점수를 출력한다.

예제

5

3
1 5
3 4
4 5
3


출처

2017 ICT Award KOREA
로그인해야 코드를 작성할 수 있어요.