QOJ.ac

QOJ

時間限制: 5 s 記憶體限制: 1024 MB 總分: 100 可 Hack ✓

#18490. Papel, bolígrafo, triángulo

统计

Los triángulos son sorprendentemente grandiosos. Se sabe que un niño de 3 años puede imitar el dibujo de un círculo, y uno de 4 años puede dibujar un cuadrado. Sin embargo, se dice que se necesita un año más para poder dibujar un triángulo (Ahn Hyo-seop, Shin Hee-young, Pediatría de Hong Chang-ui, Mirae N (2020), 12.ª edición).

Dado que Yiha ya pasó hace tiempo la edad de 5 años, dibujó sin dificultad en un papel, usando un bolígrafo, un "gran triángulo equilátero" con una longitud de lado $m$.

Antes de explorar un poco más la curiosidad de Yiha, es necesaria una definición de la cuadrícula triangular. A diferencia del sistema de coordenadas cartesianas en el plano coordenado, donde el eje $x$ y el eje $y$ son perpendiculares, en una cuadrícula triangular el ángulo que forman el eje $x$ y el eje $y$ es de 60 grados. Si dibujamos aquí una recta de la forma $x+y = m$, se forma un triángulo equilátero que tiene como vértices a $(0,0)$, $(m,0)$ y $(0,m)$, tal como se muestra en la siguiente figura. Llamemos a este triángulo equilátero el "gran triángulo equilátero".

Figura F.1: Ejes de la cuadrícula triangular y la recta de la forma $x+y = m$

Yiha quería dibujar aún más triángulos equiláteros, por lo que trazó $q$ rectas que son paralelas a uno de los tres lados y que pasan por el interior del gran triángulo equilátero, y luego borró las partes que no estaban contenidas dentro del gran triángulo equilátero. ¡Entonces, los triángulos equiláteros florecieron como flores!

Yiha se sintió feliz al ver los numerosos triángulos equiláteros, pero pronto se preguntó cuántos triángulos equiláteros había en total en el dibujo. Como parecen ser demasiados para contarlos a mano, escribamos un programa que pueda responder a la pregunta de Yiha.

Entrada

La primera línea contiene el entero $m$, que representa la longitud del lado del gran triángulo equilátero, y el entero $q$, que es la cantidad de nuevas rectas que Yiha dibujó, separados por un espacio. ($1 \le m \le 200\,000$, $0 \le q \le 3m-3$). Los vértices del gran triángulo equilátero en la cuadrícula triangular son $(0,0)$, $(m,0)$ y $(0,m)$.

Las siguientes $q$ líneas contienen cada una dos enteros $d$ y $l$ separados por un espacio. ($0 < l < m$). $d$ representa el ángulo que la recta forma con el eje $x$, y es uno de los valores 0, 60 o 120.

  • Si $d = 0$, se añade la recta $y = l$.
  • Si $d = 60$, se añade la recta $x = l$.
  • Si $d = 120$, se añade la recta $x+y = l$.

Todas las rectas dadas en la entrada son distintas.

Salida

Imprime la cantidad de triángulos equiláteros que se encuentran dentro del gran triángulo equilátero. No se incluyen los triángulos equiláteros que solo están parcialmente dentro del gran triángulo equilátero, y un punto no se considera un triángulo equilátero. El gran triángulo equilátero también se cuenta a sí mismo.

Ejemplos

Entrada 1

2 3
0 1
60 1
120 1

Salida 1

5

Entrada 2

10 5
60 1
120 2
0 1
120 5
60 9

Salida 2

12

Nota

Si dibujamos la cuadrícula triangular y las rectas para los dos ejemplos, obtenemos lo siguiente:

Figura F.2: Dibujo correspondiente al Ejemplo 1

Figura F.3: Dibujo correspondiente al Ejemplo 2

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.