CCC-22 (2022) - S4 (Good Triplets)

View as PDF

Submit solution

Points: 30 (partial)
Time limit: 1.0s
Memory limit: 256M

Author:
Problem type
Allowed languages
C, C++, Java, Pascal, Python
Good Triplets

Ο Ανδρέας είναι ένας ιδιαίτερα φιλομαθής μαθητής που σχεδίασε έναν κύκλο με το κέντρο του στο (0,\;0) και με μια ακέραιη περιφέρεια C \ge 3. Η θέση ενός σημείου στον κύκλο είναι αριστερόστροφα το μήκος τόξου από το δεξιότερο σημείο του κύκλου.

ccc22s4-figure-1.svg

Ο Ανδρέας σχεδίασε N \ge 3 σημεία σε ακέραιες θέσεις. Συγκεκριμένα, το i-οστό σημείο το σχεδίασε στη θέση P_{i}\;(0 \le P_{i} \le C - 1). Είναι πιθανό ο Ανδρέας να σχεδιάσει πολλαπλά σημεία στην ίδια θέση.

Μια καλή τριπλέτα ορίζεται ως μια τριπλέτα (a,\;b,\;c) που ικανοποιεί τις ακόλουθες συνθήκες:

  • 1 \le a < b < c \le N.
  • Η αρχή (0,\;0) βρίσκεται αυστηρά εντός του τριγώνου με κορυφές στα P_{a}, P_{b} και P_{c}. Συγκεκριμένα, η αρχή δεν βρίσκεται στην περίμετρο του τριγώνου.

Τέλος, δύο τριπλέτες (a,\;b,\;c) και (a',\;b',\;c') είναι διαφορετικές, αν a \neq a', b \neq b', ή c \neq c'.

Ο Ανδρέας, ως φιλομαθής μαθητής, θέλει να μάθει τον αριθμό των διαφορετικών καλών τριπλέτων. Βοηθήστε τον να προσδιορίσει αυτόν τον αριθμό.

Είσοδος

Η πρώτη γραμμή θα περιέχει τους ακέραιους αριθμούς N και C, χωρισμένους με ένα κενό διάστημα.

Η δεύτερη γραμμή θα περιέχει N ακέραιους αριθμούς χωρισμένους με κενά διαστήματα. Ο i-οστός ακέραιος θα είναι ο P_{i}\;(0 \le P_{i} \le C - 1).

Για 3 από τους 15 διαθέσιμους βαθμούς, 3 \le N \le 200, 3 \le C \le 10^{6}.

Για επιπλέον 3 από τους 15 διαθέσιμους βαθμούς, 3 \le N \le 10^{6}, 3 \le C \le 6000.

Για επιπλέον 6 από τους 15 διαθέσιμους βαθμούς, 3 \le N \le 10^{6}, 3 \le C \le 10^{6} και P_{1}, P_{2}, ... , P_{N} είναι όλα διαφορετικά μεταξύ τους (δηλαδή, κάθε θέση περιέχει το πολύ ένα σημείο).

Για επιπλέον 3 από τους 15 διαθέσιμους βαθμούς, 3 \le N \le 10^{6}, 3 \le C \le 10^{6}.

Έξοδος

Εξάγετε τον αριθμό των διαφορετικών καλών τριπλετών.

Παράδειγμα

input

8 10
0 2 5 5 6 9 0 0

output

6
Επεξήγηση του παραδείγματος:

Ο Ανδρέας σχεδίασε το ακόλουθο διάγραμμα.

ccc22s4-figure-2.svg

Η αρχή βρίσκεται αυστηρά μέσα στο τρίγωνο με κορυφές P_{1}, P_{2} και P_{5}, οπότε (1,\;2,\;5) είναι μια καλή τριπλέτα. Οι υπόλοιπες πέντε καλές τριπλέτες είναι οι (2,\;3,\;6), (2,\;4,\;6), (2,\;5,\;6), (2,\;5,\;7) και (2,\;5,\;8).


Comments

There are no comments at the moment.