PivotOJ

AROD

시간 제한: 5000ms메모리 제한: 2048MB출처: ICPC ECNA 2025-2026BOJ 35375

문제

Since retiring from a lucrative athletic career, Alex has devoted most of his time to pondering foundational concepts in mathematics. Recently, he has been focusing on the categorization of triangles based on their interior angles, and has invented the acronym AROD to keep track of the four fundamental types:

  • A = acute: all three angles are less than 9090 degrees
  • R = right: one angle is 9090 degrees
  • O = obtuse: one angle is greater than 9090 degrees, but less than 180180 degrees
  • D = degenerate: one angle is 180180 degrees, or, equivalently, the three vertices are collinear

Alex wonders how often three distinct vertices chosen from a regular grid of x-yx\textrm{-}y points specify a triangle in each of the four AROD categories. More precisely, for positive integers mxm_x and my,m_y, he wants to consider all possible ways of choosing three distinct vertices from the set \[ V(m_x,m_y) = \{ (x,y) : x \textrm{ and } y \textrm{ are integers, } 0 \leq x \leq m_x, 0 \leq y \leq m_y \} \] and then categorize each of the corresponding triangles into one of the four categories listed above.

입력

The input is a line containing two positive integers, mxm_x and my,m_y, satisfying mx+my600.m_x + m_y \leq 600.

출력

Output four lines containing the numbers of times three distinct vertices chosen from V(mx,my)V(m_x,m_y) specify an acute, right, obtuse, or degenerate triangle, in that order (one number per line).

예제

예제 1

입력
1 2
출력
0
14
4
2

예제 2

입력
2 3
출력
22
94
84
20
코드를 제출하려면 로그인하세요.