Summer School 2023 - Advanced Final Quiz - 3 (Ετοιμασία γευμάτων)

View as PDF

Submit solution

Points: 1 (partial)
Time limit: 1.0s
Memory limit: 64M

Author:
Problem types
Allowed languages
C, C++, Java, Pascal, Python
Ετοιμασία γευμάτων

Είστε ένας επιμελής σεφ που ετοιμάζει ένα μεγάλο γεύμα για μια σειρά από Ν βασιλικά συμπόσια τις επόμενες εβδομάδες. Ο βασιλιάς έχει ζητήσει μια ποικιλία από εκλεκτά πιάτα, το καθένα με διαφορετικό επίπεδο πολυπλοκότητας.

Ως αρχάριος σεφ, αντιλαμβάνεστε γρήγορα ότι η δημιουργία μοναδικών και εξεζητημένων συνταγών για κάθε συμπόσιο είναι αρκετά δύσκολη υπόθεση. Ωστόσο, ο ταλαντούχος φίλος σας, ένας φημισμένος σεφ, δέχτηκε γενναιόδωρα να σας βοηθήσει στη δημιουργία των γαστρονομικών απολαύσεων. Ο βασιλιάς σάς έχει αναθέσει να παρουσιάσετε ένα μόνο νέο πιάτο για κάθε συμπόσιο και ο φίλος σας θα αναλάβει το υπόλοιπο μενού, παρόλο που αυτό σημαίνει ότι μπορεί να εκνευριστεί με όλη αυτή την επιπλέον δουλειά.

Τα συμπόσια αριθμούνται από το 1 έως το N, και οι δυο σας έχετε συμφωνήσει ότι για το i-οστό (1 \le i \le N) συμπόσιο, πρέπει να συνεισφέρετε ένα πιάτο με επίπεδο πολυπλοκότητας C_i. Για να ελαφρύνετε το φόρτο εργασίας σας, επιθυμείτε να δημιουργήσετε όσο το δυνατόν λιγότερα μοναδικά πιάτα χωρίς να επαναλάβετε κάποιο πιάτο πάνω από μία φορά.

Με την υποστήριξη του φίλου σας και την ακλόνητη αφοσίωσή σας, μπορείτε να δημιουργήσετε ένα νέο πιάτο οποιουδήποτε επιπέδου πολυπλοκότητας. Ποιος είναι ο ελάχιστος αριθμός μοναδικών πιάτων που πρέπει να δημιουργήσετε για τα N συμπόσια ώστε να ικανοποιήσετε τις προσδοκίες του βασιλιά;

Δεδομένα Εισόδου

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

Δεδομένα Εξόδου

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

Περιορισμοί
  • 1 \le N \le 10^5
  • 1 \le C_i \le 10^9
  • Όριο χρόνου εκτέλεσης: 1 sec.
  • Όριο μνήμης: 64 MB.
Παραδείγματα

1ο

STDIN (meals.in)

5
1 2 3 4 6

STDOUT (meals.out)

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

Δυστυχώς, δεν μπορείτε να χαλαρώσετε - όλα τα συμπόσια θα χρειαστούν το δικό τους νέο πιάτο!


2ο

STDIN (meals.in)

6
3 2 2 1 3 3

STDOUT (meals.out)

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

Πρέπει να δημιουργήσετε μόνο 3 διαφορετικά πιάτα - ένα με πολυπλοκότητα 1, ένα με πολυπλοκότητα 2 και ένα με πολυπλοκότητα 3.


Comments

There are no comments at the moment.