복수전공
시간 제한5초메모리 제한512 MB
두 학과로 나뉜 과목들과 학과 사이의 중복 관계가 주어질 때, 서로 겹치지 않는 과목을 최대로 고르는 개수를 구한다.
문제
영준이는 소프트웨어 학부 학생이다. 컴퓨터 학부에 듣고 싶은 강의가 많아 복수전공을 시작했다.
두 학부의 커리큘럼은 대부분 비슷해서 강의 내용이 겹치는 경우가 생긴다. 한쪽 학부의 강의 하나가 다른 학부의 강의 여러 개와 내용이 겹치기도 한다.
영준이는 내용이 겹치는 두 강의를 함께 듣지 않으면서 최대한 많은 강의를 듣고 싶다. 강의 목록과 내용이 겹치는 관계가 주어질 때, 영준이가 들을 수 있는 강의 개수의 최댓값을 구하라.
입력
첫 줄에 강의의 개수 ()과 내용이 겹치는 관계의 개수 ()이 주어진다.
다음 줄에는 강의 번호와 그 강의가 속한 학부가 주어진다. 강의 번호는 부터 까지이고 각 번호가 정확히 한 번씩 나온다. 컴퓨터 학부 강의는 c, 소프트웨어 학부 강의는 s로 표시한다.
다음 줄에는 내용이 겹치는 두 강의의 번호가 주어진다. 두 강의는 서로 다른 학부에 속하고, 같은 두 강의의 관계가 두 번 이상 나오지 않는다.
출력
영준이가 들을 수 있는 강의 개수의 최댓값을 한 줄에 출력한다.