울타리 만들기

면접 대비

시간 제한1초메모리 제한128 MB

요약
길이 N인 널빤지를 네 개의 양의 정수 조각으로 자를 때, 가장 긴 조각이 나머지 세 조각의 합보다 짧은 순서쌍의 수를 구한다.
난이도

보통10점 중 5점

유형
조합론, 수학, 완전 탐색, 구현
정답자
아직 제출이 없습니다

문제

농부 존은 소들을 가둘 사각형 울타리를 만들려고 합니다. 그는 정수 길이 NN (4≤N≤25004 \le N \le 2500)짜리 나무 판자 하나를 가지고 있습니다. 이 판자를 세 지점에서 잘라 네 개의 조각으로 나누며, 각 조각의 길이는 양의 정수여야 합니다.

네 조각의 길이는 넓이가 0보다 큰 사각형 울타리를 만들 수 있기만 하면 어떤 양의 정수여도 됩니다. 네 조각이 올바른 울타리를 이루도록 판자를 자르는 방법은 모두 몇 가지입니까?

참고:

  • 한 방법에서 자른 위치가 다른 방법에는 없다면, 두 자르기 방법은 서로 다른 것으로 봅니다. 회전이나 대칭 등으로 같아지는 경우를 따로 제거하지 않습니다.
  • 울타리가 둘러싸는 넓이는 반드시 00보다 커야 합니다.
  • 정답은 항상 부호 있는 32비트 정수 범위에 들어갑니다.

입력

정수 NN 하나가 주어집니다.

출력

판자를 네 조각으로 잘라 넓이가 양수인 사각형을 만들 수 있는 자르기 방법의 수를 정수 하나로 출력합니다.

힌트

N=6N = 6일 때, 판자를 순서가 있는 네 조각으로 자르는 방법은 1010가지입니다: (1,1,1,3)(1,1,1,3), (1,1,2,2)(1,1,2,2), (1,1,3,1)(1,1,3,1), (1,2,1,2)(1,2,1,2), (1,2,2,1)(1,2,2,1), (1,3,1,1)(1,3,1,1), (2,1,1,2)(2,1,1,2), (2,1,2,1)(2,1,2,1), (2,2,1,1)(2,2,1,1), (3,1,1,1)(3,1,1,1). 이 중 네 가지 — (1,1,1,3)(1,1,1,3), (1,1,3,1)(1,1,3,1), (1,3,1,1)(1,3,1,1), (3,1,1,1)(3,1,1,1) — 는 한 변의 길이가 나머지 세 변의 합과 같아서 사각형을 만들 수 없습니다. 따라서 유효한 방법은 66가지입니다.

네 길이가 넓이 양수인 사각형을 이루는 필요충분조건은 가장 긴 조각의 길이가 나머지 세 조각의 길이 합보다 엄격히 작은 것입니다.

예제3

  1. 예제 1

    입력
    6
    
    예상 출력
    6
    
  2. 예제 2

    입력
    4
    
    예상 출력
    1
    
  3. 예제 3

    입력
    8
    
    예상 출력
    19