QOJ.ac

QOJ

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

#23645. Captain Thrawn

统计

Captain Thrawn von der Chiss-Aszendenz ist auf der Heimatwelt der Paataatus gestrandet! Er verfügt über eine entscheidende Information, die er Admiral Ar'alani zukommen lassen muss, kann aber nicht darauf warten, dass ihn ein verbündetes Sternenschiff abholt. Stattdessen muss er eine Kommunikationstriade errichten, um ihr diese Information zu übermitteln. Die Triade besteht aus 3 Teilen, die alle im gleichen euklidischen Abstand größer null voneinander (d. h. an den Eckpunkten eines gleichseitigen Dreiecks) platziert werden müssen, um Daten erfolgreich zu übertragen.

Allerdings ist das politische Verhältnis zwischen den Chiss und den Paataatus angespannt, sodass die Regierung der Paataatus Thrawn nicht erlaubt, Teile der Triade an beliebigen Orten aufzustellen. Die Hauptstadt der Paataatus hat die Form eines regelmäßigen Sechsecks mit der Seitenlänge $l$. Sie verfügt über $2l + 1$ in gleichem Abstand verlaufende parallele Straßen (Street), die von West nach Ost verlaufen und von Süd nach Nord von $-l$ bis $l$ nummeriert sind, wobei die Straße $-l$ entlang der südlichsten Seite des Sechsecks verläuft, die Straße $l$ entlang der nördlichsten Seite des Sechsecks verläuft und die Straße $0$ durch das Zentrum des Sechsecks führt.

Ebenso gibt es $2l + 1$ in gleichem Abstand verlaufende parallele Alleen (Avenue), die von Nordwest nach Südost verlaufen und von Südwest nach Nordost von $-l$ bis $l$ nummeriert sind, wobei die Allee $-l$ entlang der südwestlichsten Seite des Sechsecks verläuft, die Allee $l$ entlang der nordöstlichsten Seite des Sechsecks verläuft und die Allee $0$ durch das Zentrum des Sechsecks führt.

Und es gibt $2l + 1$ in gleichem Abstand verlaufende parallele Boulevards (Boulevard), die von Südwest nach Nordost verlaufen und von Südost nach Nordwest von $-l$ bis $l$ nummeriert sind, wobei der Boulevard $-l$ entlang der südöstlichsten Seite des Sechsecks verläuft, der Boulevard $l$ entlang der nordwestlichsten Seite des Sechsecks verläuft und der Boulevard $0$ durch das Zentrum des Sechsecks führt.

Hier ist ein Beispiel für den Grundriss der Hauptstadt für $l = 2$:

problem_23645_61db380b8da2c2f06c4fa47d141b47f1.png

An jeder Kreuzung einer Straße, einer Allee und eines Boulevards befindet sich ein Turm. Wenn die Straßennummer $x$, die Alleenummer $y$ und die Boulevardnummer $z$ ist, dann hat der Turm die Koordinaten $(x, y, z)$. Jeder Turm gehört einem Beamten der Paataatus.

Zum Glück für Thrawn hat er im Laufe seiner Karriere mehreren Beamten der Paataatus geholfen, und nun sind sie bereit, sich erkenntlich zu zeigen und ihm zu gestatten, einen Teil seiner Triade in einem ihrer Türme aufzubauen. Insgesamt besitzen sie $n$ Türme, sodass Thrawn 3 davon auswählen muss, die gleich weit voneinander entfernt sind, um eine Triade zu errichten. Bevor er seine Wahl trifft, möchte Thrawn alle seine Möglichkeiten kennen oder zumindest wissen, wie viele es gibt. Hilf ihm, die Anzahl der Möglichkeiten zu zählen, 3 Türme auszuwählen, in denen eine Kommunikationstriade errichtet werden kann.

Eingabe

Die erste Zeile enthält zwei ganze Zahlen $l$ und $n$ — die Seitenlänge der Hauptstadt und die Anzahl der Türme, die bereit sind, Thrawn zu helfen ($1 \le l \le 500$; $1 \le n \le 3 \cdot l \cdot (l + 1) + 1$).

Jede der nächsten $n$ Zeilen enthält 3 ganze Zahlen $x_i, y_i, z_i$ — die Koordinaten des $i$-ten Turms ($-l \le x_i, y_i, z_i \le l$). Es wird garantiert, dass jedes Koordinatentripel einen Turm darstellt und dass alle Türme in der Eingabe paarweise verschieden sind.

Ausgabe

Gib eine einzelne ganze Zahl aus — die Anzahl der Möglichkeiten, die erforderlichen 3 Türme auszuwählen.

Beispiele

Eingabe 1

2 6
-1 -2 1
2 2 0
-1 1 -2
-1 0 -1
1 1 0
0 1 -1

Ausgabe 1

1

Eingabe 2

1 7
0 1 -1
1 1 0
0 -1 1
1 0 1
-1 -1 0
-1 0 -1
0 0 0

Ausgabe 2

8

Hinweis

Ein Dreiecksgitter zu deiner Unterstützung:

problem_23645_cd9cbf58f065d9a594a7e17a785b57df.png

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.