Max-Queen
시간 제한2초메모리 제한1024 MB
n x m 체스판에 퀸을 원하는 만큼 놓아 서로 공격하는 쌍의 개수를 최대로 만드는 값을 구한다.
문제
개의 행과 개의 열로 이루어진 체스판이 있습니다. 이 체스판에 퀸을 개 이상 두려고 합니다.
여러분은 각 칸 위에 퀸을 최대 개 둘 수 있습니다. 다시 말해, 각 칸에는 퀸이 개 있거나 퀸이 하나도 없습니다.
두 퀸이 같은 행, 같은 열, 또는 같은 대각선 위에 있으며, 두 퀸 사이를 가로막는 퀸이 없을 때 두 퀸이 서로 공격할 수 있다고 합니다. 또한 퀸 와 퀸 가 서로 공격할 수 있을 때, 순서쌍 를 공격하는 쌍이라고 합니다. 공격하는 쌍 와 는 같은 것으로 취급합니다.
예를 들어, 아래와 같이 퀸을 두면 서로 다른 공격하는 쌍이 개가 됩니다.

이때 서로 다른 공격하는 쌍의 개수의 최댓값을 구하는 프로그램을 작성해 주세요.
입력
한 줄에 행의 개수 과 열의 개수 이 공백으로 구분되어 주어집니다. ()
출력
한 줄에 문제의 정답을 출력합니다.
힌트
출력이 32비트 정수의 최댓값을 초과할 수 있음에 유의하세요. 값을 저장하기 위해 다음을 사용할 것을 권장합니다.
- C/C++:
long long - Java:
long - Python:
int(별도의 처리를 할 필요가 없습니다.) - 이외의 언어: 언어별 레퍼런스를 참고합니다.