대각선 교차

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

nn각형이 주어지고, 이 다각형의 대각선 중 mm개가 선택되어 있다. 선택된 대각선들 가운데 서로 교차하는 대각선 쌍이 몇 개인지 구하라. 두 대각선이 다각형 내부에서 서로 가로지르면 교차한다고 하며, 두 대각선이 꼭짓점(끝점) 하나만 공유하는 경우는 교차로 세지 않는다.

다음을 수행하는 프로그램을 작성하라.

  • 표준 입력에서 다각형과 선택된 대각선들의 정보를 읽는다.
  • 서로 교차하는 대각선 쌍의 개수를 센다.
  • 그 개수를 표준 출력에 쓴다.

입력

첫째 줄에 두 정수 nnmm이 공백 하나로 구분되어 주어진다. nn은 다각형의 꼭짓점 수, mm은 선택된 대각선의 수이다 (4n10000004 \le n \le 1\,000\,000, 2m100000002 \le m \le 10\,000\,000).

이어지는 mm개의 줄에는 각 대각선의 정보가 주어진다. ii번째 줄에는 두 정수 aia_ibib_i (1ai,bin1 \le a_i, b_i \le n)가 공백 하나로 구분되어 주어지며, 이는 꼭짓점 aia_i와 꼭짓점 bib_i를 잇는 대각선을 뜻한다. 다각형의 꼭짓점은 반시계 방향으로 11부터 nn까지 번호가 매겨져 있다.

입력으로 주어지는 각 쌍은 항상 올바른 대각선을 나타낸다(같은 꼭짓점을 가리키거나 다각형의 변이 되는 경우는 없다). 또한 입력에 주어지는 모든 대각선은 서로 다르다.

출력

서로 교차하는 대각선 쌍의 개수를 한 줄에 정수 하나로 출력한다. 교차하는 쌍이 하나도 없으면 00을 출력한다.

힌트

위 그림에서 실선과 점선은 같은 다각형 위에서 선택된 서로 다른 두 대각선 집합을 나타낸다.