Σε ένα μικρό χωριό κοντά σε ένα αρχαίο δάσος, υπήρχε ένας θρύλος για έναν κρυμμένο θησαυρό, θαμμένο βαθιά μέσα στο δάσος. Παρά τις πολλές προσπάθειες, κανείς δεν είχε καταφέρει ποτέ να τον βρει. Αυτό όμως ήταν έτοιμο να αλλάξει, χάρη σε μια νεαρή εξερευνήτρια, την Elara. Είχε ανακαλύψει ένα παλιό έγγραφο που περιείχε οδηγίες για το πώς να εντοπίσει τον θησαυρό. Χρησιμοποιώντας αυτές τις οδηγίες, η Elara κατάφερε να σχεδιάσει έναν χάρτη που αποκάλυπτε το μονοπάτι προς τον θησαυρό.
Προς έκπληξή της, το μονοπάτι ακολουθούσε μια παράξενη δεξιόστροφη σπείρα. Δεν είναι να απορεί κανείς που κανείς δεν είχε καταφέρει να βρει τον θησαυρό ως τότε! Με τον χάρτη στο χέρι, η Elara ξεκινά το ταξίδι της για να αποκαλύψει τον κρυμμένο θησαυρό.
Η αποστολή σου είναι να επιστρέψεις έναν τετράγωνο πίνακα δεδομένου μεγέθους.
Ο πίνακας πρέπει να γεμίσει με φυσικούς αριθμούς, ξεκινώντας από το 1 στην πάνω αριστερή γωνία και αυξάνοντας με φορά σπείρας προς το εσωτερικό, δεξιόστροφα, όπως στα παρακάτω παραδείγματα:
1 2 3
8 9 4
7 6 5
1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7
Η έξοδος θα πρέπει να είναι οργανωμένη σε διάταξη κατά γραμμές: πρώτα όλες οι λέξεις της πρώτης γραμμής, μετά οι λέξεις της δεύτερης γραμμής, και ούτω καθεξής.
| Καταχωρητής | Χρήση | Τύπος | Περιγραφή |
|---|---|---|---|
$a0 |
είσοδος | ακέραιος | μέγεθος |
$a1 |
είσοδος/έξοδος | διεύθυνση | πίνακας λέξεων, σε διάταξη κατά γραμμές |
$v0 |
έξοδος | ακέραιος | αριθμός λέξεων στον πίνακα |
$t0-9 |
προσωρινή | οποιοσδήποτε | για προσωρινή αποθήκευση |
Γράψου στο Exercism για να μάθεις και να κατακτήσεις MIPS Assembly με 70 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.