Διαδρομές
/
WebAssembly
WebAssembly
/
Ασκήσεις
/
Αντιστοίχιση αγκυλών
Αντιστοίχιση αγκυλών

Αντιστοίχιση αγκυλών

Μέτριο

Εισαγωγή

Σου δίνεται η ευκαιρία να γράψεις λογισμικό για το Bracketeer™, ένα αρχαίο αλλά ισχυρό mainframe. Το λογισμικό που τρέχει πάνω του είναι γραμμένο σε μια ιδιόκτητη γλώσσα. Μεγάλο μέρος της σύνταξής του είναι οικείο, αλλά παρατηρείς πάρα πολλές αγκύλες, άγκιστρα και παρενθέσεις. Παρά το ότι το Bracketeer™ είναι ισχυρό, δεν έχει ευελιξία. Αν ο πηγαίος κώδικας έχει μη ισορροπημένες αγκύλες, άγκιστρα ή παρενθέσεις, το Bracketeer™ καταρρέει και πρέπει να το επανεκκινήσεις. Για να αποφύγεις ένα τέτοιο σενάριο, αρχίζεις να γράφεις κώδικα που μπορεί να επαληθεύσει ότι οι αγκύλες, τα άγκιστρα και οι παρενθέσεις είναι ισορροπημένες πριν προσπαθήσεις να τον τρέξεις στο Bracketeer™.

Οδηγίες

Δεδομένης μιας συμβολοσειράς που περιέχει αγκύλες [], άγκιστρα {}, παρενθέσεις (), ή οποιονδήποτε συνδυασμό αυτών, επαλήθευσε ότι όλα ανεξαιρέτως τα ζεύγη ταιριάζουν και είναι σωστά εμφωλευμένα. Οποιοιδήποτε άλλοι χαρακτήρες πρέπει να αγνοούνται. Για παράδειγμα, το "{what is (42)}?" είναι ισορροπημένο και το "[text}" δεν είναι.

Ειδικές οδηγίες για το track

Τα byte 64-319 της γραμμικής μνήμης είναι δεσμευμένα για τη συμβολοσειρά εισόδου.

Η συμβολοσειρά εισόδου μπορεί να τροποποιηθεί επιτόπου, αν το θέλεις.


Πηγή

Ginna Baker
Επεξεργασία μέσω GitHub Ο σύνδεσμος ανοίγει σε νέο παράθυρο ή καρτέλα
WebAssembly Exercism

Έτοιμος να ξεκινήσεις την άσκηση Αντιστοίχιση αγκυλών;

Γράψου στο Exercism για να μάθεις και να κατακτήσεις WebAssembly με 87 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.