Εργάζεσαι σε μια εταιρεία που φτιάχνει ένα διαδικτυακό παιχνίδι επιβίωσης σε κόσμο φαντασίας.
Όταν ένας παίκτης τελειώνει μια πίστα, κερδίζει πόντους ενέργειας. Το πόση ενέργεια παίρνει εξαρτάται από τα μαγικά αντικείμενα που βρήκε εξερευνώντας εκείνη την πίστα.
Η αποστολή σου είναι να γράψεις τον κώδικα που υπολογίζει τους πόντους ενέργειας που κερδίζουν οι παίκτες όταν ολοκληρώνουν ένα επίπεδο.
Οι πόντοι που κερδίζονται εξαρτώνται από δύο πράγματα:
Οι πόντοι ενέργειας υπολογίζονται σύμφωνα με τους παρακάτω κανόνες:
Ας δούμε ένα παράδειγμα:
Ο παίκτης ολοκλήρωσε το επίπεδο 20 και βρήκε δύο μαγικά αντικείμενα με βασικές τιμές 3 και 5.
Για να υπολογίσουμε τους πόντους ενέργειας που κέρδισε ο παίκτης, πρέπει να βρούμε όλα τα μοναδικά πολλαπλάσια αυτών των βασικών τιμών που είναι μικρότερα από το επίπεδο 20.
{3, 6, 9, 12, 15, 18}
{5, 10, 15}
{3, 5, 6, 9, 10, 12, 15, 18}
3 + 5 + 6 + 9 + 10 + 12 + 15 + 18 = 78
Αυτή η άσκηση απαιτεί να επεξεργαστείς μια συλλογή δεδομένων. Μπορείς να απλοποιήσεις τον κώδικά σου χρησιμοποιώντας το LINQ (Language Integrated Query). Για περισσότερες πληροφορίες, δες αυτή τη σελίδα.
Γράψου στο Exercism για να μάθεις και να κατακτήσεις C# με 62 έννοιες178 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.