정사각형 세기

면접 대비

시간 제한2초메모리 제한512 MB

요약
가로선 h개와 세로선 v개의 좌표가 주어질 때, 네 변이 모두 그 선들로 그려진 정사각형의 개수를 센다.
난이도

보통10점 중 6점

유형
배열, 해시맵, 투 포인터, 조합론
정답자
아직 제출이 없습니다

문제

Alice는 깨끗한 종이 한 장을 가져와 그 위에 가로선 h개와 세로선 v개를 그렸다.

가로선의 y좌표는 y1, . . . , yh이고, 세로선의 x좌표는 x1, . . . , xv이다.

이 좌표들이 주어질 때, 종이에 나타난 정사각형의 개수를 세어라.

(정사각형의 둘레 전체가 그려져 있어야 한다. 정사각형의 내부가 비어 있을 필요는 없다.)

입력

첫째 줄에 정수 h와 v가 주어진다. (0 ≤ h, v ≤ 1500)

둘째 줄에 h개의 정수 y1, . . . , yh가 공백으로 구분되어 주어진다. 이 수열은 엄격히 증가한다.

셋째 줄에 v개의 정수 x1, . . . , xv가 공백으로 구분되어 주어진다. 이 수열은 엄격히 증가한다.

모든 가로 좌표와 세로 좌표는 0 이상 230 이하이다.

출력

정사각형의 총 개수를 한 줄에 출력한다.

힌트

예시에는 1 × 1 정사각형이 하나, 2 × 2 정사각형이 하나, 3 × 3 정사각형이 하나 있다.

예제1

  1. 예제 1

    입력
    3 4
    0 1 3
    1 2 4 8
    
    예상 출력
    3